diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..301e9a98 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,10 @@ +# Set default behavior +* text=auto + +# Explicit line endings for important file types +*.sh text eol=lf +*.py text eol=lf +*.js text eol=lf +*.bat text eol=crlf +*.ps1 text eol=crlf +*.yml text eol=lf diff --git a/.github/workflows/build_wppm.yml b/.github/workflows/build_wppm.yml new file mode 100644 index 00000000..9f244643 --- /dev/null +++ b/.github/workflows/build_wppm.yml @@ -0,0 +1,86 @@ +name: build_wppm +# 2025-08-16: from TornadoWeb simple example, and full bash +# object: +# - learn the matrix method +# - be compatible with cibuilds later +# - copy the methods the most widly used +# +# using a predefined hashed wheel environnment: pylock.wppmbuild.toml +# pip freeze>test.txt +# python -m pip lock --no-deps --find-links=C:\WinP\packages.srcreq -r test.txt -o pylock.wppmbuild.toml +# python -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req('pylock.wppmbuild.toml', r'requir.wppmbuild.txt')" +# +on: + workflow_dispatch: + # Allow this workflow to be run manually (pushing to testpypi instead of pypi) +permissions: {} + +env: + python-version: '3.13' + WINPYrequirements: './winpython/portable/cycle_2025_04/requir.wppmbuild.txt' + PYTHONIOENCODING: utf-8 + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-latest] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - uses: actions/setup-python@v5 + name: Install Python + with: + python-version: ${{ env.python-version }} + + - name: Install dependencies to build with bash + shell: bash + run: | + python -m pip install --no-deps --require-hashes -r ${{ env.WINPYrequirements }} + + #- name: Install dependencies to build with pwsh + # shell: pwsh + # run: | + # python -m pip install --no-deps --require-hashes -r $env.WINPYrequirements + + - name: try diagnose flit problem + shell: bash + run: | + git status + git status --ignored --untracked-files=all + + - name: Build sdist + shell: bash + run: | + python -m flit build && ls -l dist + + + - name: prepare result + shell: bash + run: | + mkdir wheelhouse + cp dist/*.whl wheelhouse + + - name: generate hashes wppm style + shell: bash + run: | + DESTFILE="./wheelhouse/hashes.md" + python -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" wheelhouse/*.whl > $DESTFILE + + + - name: List wheelhouse contents (for debugging) + shell: bash + run: | + ls -1 wheelhouse + + - uses: actions/upload-artifact@v4 + with: + name: artifacts-${{ matrix.os }} + path: ./wheelhouse/*.* + #retention-days: 30 # keeps artifact for 30 days diff --git a/.github/workflows/build_wppm_prod_publish.yml b/.github/workflows/build_wppm_prod_publish.yml new file mode 100644 index 00000000..e8b2995a --- /dev/null +++ b/.github/workflows/build_wppm_prod_publish.yml @@ -0,0 +1,93 @@ +name: build_wppm_prod_publish +# 2025-08-16: from TornadoWeb simple example, and full bash +# object: +# - learn the matrix method +# - be compatible with cibuilds later +# - copy the methods the most widly used +# +# using a predefined hashed wheel environnment: pylock.wppmbuild.toml +# pip freeze>test.txt +# python -m pip lock --no-deps --find-links=C:\WinP\packages.srcreq -r test.txt -o pylock.wppmbuild.toml +# python -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req('pylock.wppmbuild.toml', r'requir.wppmbuild.txt')" +# +on: + workflow_dispatch: + # Allow this workflow to be run manually (pushing to testpypi instead of pypi) +permissions: {} + +env: + python-version: '3.13' + WINPYrequirements: './winpython/portable/cycle_2025_04/requir.wppmbuild.txt' + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-latest] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - uses: actions/setup-python@v5 + name: Install Python + with: + python-version: ${{ env.python-version }} + + - name: Install dependencies to build with bash + shell: bash + run: | + python -m pip install --no-deps --require-hashes -r ${{ env.WINPYrequirements }} + + - name: Build sdist + shell: bash + run: | + python -m flit build && ls -l dist + + - name: prepare result + shell: bash + run: | + mkdir wheelhouse + cp dist/*.whl wheelhouse + + - name: generate hashes wppm style + shell: bash + run: | + DESTFILE="./wheelhouse/hashes.md" + python -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" wheelhouse/*.whl > $DESTFILE + cat $DESTFILE + + - name: List wheelhouse contents (for debugging) + shell: bash + run: | + ls -1 wheelhouse + + - uses: actions/upload-artifact@v4 + with: + name: artifacts-${{ matrix.os }} + path: ./dist/wppm*.whl + retention-days: 88 # keeps artifact for 8 days + + upload_pypi_test: + name: Upload to PyPI (prod) + needs: [build_wheels] + runs-on: ubuntu-24.04 + permissions: + # This permission is required for pypi's "trusted publisher" feature + id-token: write + steps: + - uses: actions/download-artifact@v4 + with: + pattern: artifacts-* + path: dist + merge-multiple: true + + - uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{ secrets.PYPI_API_TOKEN }} + skip-existing: true + verbose: true # Enable verbose output diff --git a/.github/workflows/build_wppm_test.yml b/.github/workflows/build_wppm_test.yml new file mode 100644 index 00000000..81573f07 --- /dev/null +++ b/.github/workflows/build_wppm_test.yml @@ -0,0 +1,85 @@ +name: build_wppm_test +# 2025-08-16: from TornadoWeb simple example, and full bash +# object: +# - learn the matrix method +# - be compatible with cibuilds later +# - copy the methods the most widly used +# +# using a predefined hashed wheel environnment: pylock.wppmbuild.toml +# pip freeze>test.txt +# python -m pip lock --no-deps --find-links=C:\WinP\packages.srcreq -r test.txt -o pylock.wppmbuild.toml +# python -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req('pylock.wppmbuild.toml', r'requir.wppmbuild.txt')" +# +on: + workflow_dispatch: + # Allow this workflow to be run manually (pushing to testpypi instead of pypi) +permissions: {} + +env: + python-version: '3.13' + WINPYrequirements: './winpython/portable/cycle_2025_04/requir.wppmbuild.txt' + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-latest] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - uses: actions/setup-python@v5 + name: Install Python + with: + python-version: ${{ env.python-version }} + + - name: Install dependencies to build with bash + shell: bash + run: | + python -m pip install --no-deps --require-hashes -r ${{ env.WINPYrequirements }} + + #- name: Install dependencies to build with pwsh + # shell: pwsh + # run: | + # python -m pip install --no-deps --require-hashes -r $env.WINPYrequirements + + - name: try diagnose flit problem + shell: bash + run: | + git status + git status --ignored --untracked-files=all + + - name: Build sdist + shell: bash + run: | + python -m flit build && ls -l dist + + + - name: prepare result + shell: bash + run: | + mkdir wheelhouse + cp dist/*.whl wheelhouse + + - name: generate hashes wppm style + shell: bash + run: | + DESTFILE="./wheelhouse/hashes.md" + python -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" wheelhouse/*.whl > $DESTFILE + + + - name: List wheelhouse contents (for debugging) + shell: bash + run: | + ls -1 wheelhouse + + - uses: actions/upload-artifact@v4 + with: + name: artifacts-${{ matrix.os }} + path: ./wheelhouse/*.* + retention-days: 3 # keeps artifact for 3 days diff --git a/.github/workflows/build_wppm_test_publish.yml b/.github/workflows/build_wppm_test_publish.yml new file mode 100644 index 00000000..547c228e --- /dev/null +++ b/.github/workflows/build_wppm_test_publish.yml @@ -0,0 +1,94 @@ +name: build_wppm_test_publish +# 2025-08-16: from TornadoWeb simple example, and full bash +# object: +# - learn the matrix method +# - be compatible with cibuilds later +# - copy the methods the most widly used +# +# using a predefined hashed wheel environnment: pylock.wppmbuild.toml +# pip freeze>test.txt +# python -m pip lock --no-deps --find-links=C:\WinP\packages.srcreq -r test.txt -o pylock.wppmbuild.toml +# python -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req('pylock.wppmbuild.toml', r'requir.wppmbuild.txt')" +# +on: + workflow_dispatch: + # Allow this workflow to be run manually (pushing to testpypi instead of pypi) +permissions: {} + +env: + python-version: '3.13' + WINPYrequirements: './winpython/portable/cycle_2025_04/requir.wppmbuild.txt' + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-latest] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - uses: actions/setup-python@v5 + name: Install Python + with: + python-version: ${{ env.python-version }} + + - name: Install dependencies to build with bash + shell: bash + run: | + python -m pip install --no-deps --require-hashes -r ${{ env.WINPYrequirements }} + + - name: Build sdist + shell: bash + run: | + python -m flit build && ls -l dist + + - name: prepare result + shell: bash + run: | + mkdir wheelhouse + cp dist/*.whl wheelhouse + + - name: generate hashes wppm style + shell: bash + run: | + DESTFILE="./wheelhouse/hashes.md" + python -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" wheelhouse/*.whl > $DESTFILE + + + - name: List wheelhouse contents (for debugging) + shell: bash + run: | + ls -1 wheelhouse + + - uses: actions/upload-artifact@v4 + with: + name: artifacts-${{ matrix.os }} + path: ./dist/wppm*.whl + retention-days: 66 # keeps artifact for 66 days + + upload_pypi_test: + name: Upload to PyPI (test) + needs: [build_wheels] + runs-on: ubuntu-24.04 + permissions: + # This permission is required for pypi's "trusted publisher" feature + id-token: write + steps: + - uses: actions/download-artifact@v4 + with: + pattern: artifacts-* + path: dist + merge-multiple: true + + - uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{ secrets.TEST_PYPI_API_TOKEN }} + repository-url: https://test.pypi.org/legacy/ + skip-existing: true + verbose: true # Enable verbose output diff --git a/.github/workflows/github_workflows_build-2025_05.yml b/.github/workflows/github_workflows_build-2025_05.yml new file mode 100644 index 00000000..9df4cce7 --- /dev/null +++ b/.github/workflows/github_workflows_build-2025_05.yml @@ -0,0 +1,354 @@ +name: Build WinPython for 2025-05 Cycle + +on: + workflow_dispatch: + inputs: + python_version: + description: 'Python version to build (3.13, 3.14 or 3.15)' + required: true + default: '3.14' + type: choice + options: + - '3.13' + - '3.14' + - '3.15' + +jobs: + build-winpython: + runs-on: windows-latest + strategy: + fail-fast: true + matrix: + flavor: + - name: "dot" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_05\\requir.64-3_13_11_0dot.txt" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0dot.txt" + REQUIREMENTS_315: "winpython\\portable\\cycle_2025_05\\requir.64-3_15_0_0dot.txt" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + REQUIREMENTS_WHL_315: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + WINPYARCH: "64" + WINPYARCHDET: "64" + - name: "slim" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_05\\requir.64-3_13_11_0slim.txt" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0slim.txt" + REQUIREMENTS_315: "" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + REQUIREMENTS_WHL_315: "" + ZIP: "0" + SEVEN_Z: "1" + EXE: "1" + PANDOC: "1" + WINPYARCH: "64" + WINPYARCHDET: "64" + - name: "whl" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_05\\requir.64-3_13_11_0dot.txt" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0dot.txt" + REQUIREMENTS_315: "" + REQUIREMENTS_WHL_313: "winpython\\portable\\cycle_2025_05\\requir.64-3_13_11_0whl_wheels.txt" + REQUIREMENTS_WHL_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0whl_wheels.txt" + REQUIREMENTS_WHL_315: "" + ZIP: "0" + SEVEN_Z: "1" + EXE: "0" + PANDOC: "0" + WINPYARCH: "64" + WINPYARCHDET: "64" + - name: "free" + REQUIREMENTS_313: "" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0free.txt" + REQUIREMENTS_315: "" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + REQUIREMENTS_WHL_315: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + WINPYARCH: "64" + WINPYARCHDET: "64F" + - name: "slimf" + REQUIREMENTS_313: "" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_05\\requir.64-3_14_2_0slimf.txt" + REQUIREMENTS_315: "" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + REQUIREMENTS_WHL_315: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "1" + WINPYARCH: "64" + WINPYARCHDET: "64F" + + env: + PYTHON_VERSION: ${{ github.event.inputs.python_version }} + WINPYFLAVOR: ${{ matrix.flavor.name }} + PANDOC: ${{ matrix.flavor.PANDOC }} + WINPYZIP: ${{ matrix.flavor.ZIP }} + WINPY7Z: ${{ matrix.flavor.SEVEN_Z }} + WINPYEXE: ${{ matrix.flavor.EXE }} + WINPYARCH: ${{ matrix.flavor.WINPYARCH }} + WINPYARCHDET: ${{ matrix.flavor.WINPYARCHDET }} + # constants + my_release_level: "" + dotwheelhouse: dotpython\\wheelhouse\\included.wheels + pandoc_source: "https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" + pandoc_sha256: "11eb6dbe5286c9e5edb0cca4412e7d99ec6578ec04158b0b7fe11f7fd96688e5" + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set static and matrix variables based on selected Python version + shell: bash + run: | + PYTHON_VERSION="${{ env.PYTHON_VERSION }}" + WINPYARCHDET="${{ env.WINPYARCHDET }}" + + # Populate generic per-flavor / per-version selections + if [ "$PYTHON_VERSION" = "3.13" ]; then + echo "WINPYREQUIREMENTS=${{ matrix.flavor.REQUIREMENTS_313 }}" >> $GITHUB_ENV + echo "WINPYREQUIREMENTSwhl=${{ matrix.flavor.REQUIREMENTS_WHL_313 }}" >> $GITHUB_ENV + echo "WINPYVERSION=313" >> $GITHUB_ENV + WINPYVER2="3.13.11.0" + BUILD_LOCATION="WPy64-313110" + elif [ "$PYTHON_VERSION" = "3.14" ]; then + echo "WINPYREQUIREMENTS=${{ matrix.flavor.REQUIREMENTS_314 }}" >> $GITHUB_ENV + echo "WINPYREQUIREMENTSwhl=${{ matrix.flavor.REQUIREMENTS_WHL_314 }}" >> $GITHUB_ENV + echo "WINPYVERSION=314" >> $GITHUB_ENV + WINPYVER2="3.14.2.0" + BUILD_LOCATION="WPy64-31380" + elif [ "$PYTHON_VERSION" = "3.15" ]; then + echo "WINPYREQUIREMENTS=${{ matrix.flavor.REQUIREMENTS_315 }}" >> $GITHUB_ENV + echo "WINPYREQUIREMENTSwhl=${{ matrix.flavor.REQUIREMENTS_WHL_315 }}" >> $GITHUB_ENV + echo "WINPYVERSION=315" >> $GITHUB_ENV + WINPYVER2="3.15.0.0" + BUILD_LOCATION="WPy64-31500" + fi + + # write common flavor env vars + echo "WINPYVER2=$WINPYVER2" >> $GITHUB_ENV + echo "ARTIFACT_NAME=publish_${PYTHON_VERSION}${{ matrix.flavor.name }}" >> $GITHUB_ENV + echo "build_location=$BUILD_LOCATION" >> $GITHUB_ENV + echo "destwheelhouse=${BUILD_LOCATION}\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "WINPYVER=${WINPYVER2}${{ matrix.flavor.name }}${{ env.my_release_level }}" >> $GITHUB_ENV + + # Centralized mapping of python binaries and SHAs by version and arch. + # 3.13 x64 (GIL) + if [ "$PYTHON_VERSION" = "3.13" ] && [ "$WINPYARCHDET" = "64" ]; then + echo "python_source=https://github.com/astral-sh/python-build-standalone/releases/download/20251205/cpython-3.13.11+20251205-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" >> $GITHUB_ENV + echo "python_sha256=d8a2b5e05ef71fc71f048a6f409d69b940bc5d33da8b112611cfba68fc5b86c3" >> $GITHUB_ENV + fi + + # 3.14 x64 (GIL) + if [ "$PYTHON_VERSION" = "3.14" ] && [ "$WINPYARCHDET" = "64" ]; then + echo "python_source=https://github.com/astral-sh/python-build-standalone/releases/download/20251205/cpython-3.14.2+20251205-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" >> $GITHUB_ENV + echo "python_sha256=512744d8a86dc6042a712035ada5d87c5e2ce4218f5dbdc74d039cee46e76fb4" >> $GITHUB_ENV + fi + + # 3.14 X64 (free-threading) + if [ "$PYTHON_VERSION" = "3.14" ] && [ "$WINPYARCHDET" = "64F" ]; then + echo "python_source=https://github.com/astral-sh/python-build-standalone/releases/download/20251205/cpython-3.14.2+20251205-x86_64-pc-windows-msvc-freethreaded+pgo-full.tar.zst" >> $GITHUB_ENV + echo "python_sha256=536cf813857ea566fcfae18a1b7dbcd185385f1dc1f04d5a0951bad235c8fc61" >> $GITHUB_ENV + fi + + # 3.15 X64 (GIL) + if [ "$PYTHON_VERSION" = "3.15" ] && [ "$WINPYARCHDET" = "64" ]; then + echo "python_source=https://github.com/astral-sh/python-build-standalone/releases/download/20251217/cpython-3.15.0a3+20251217-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" >> $GITHUB_ENV + echo "python_sha256=4cac37170050bb402eaabad84e7ceb4679ec8ffaf43fbea71d62651ca761dcd7" >> $GITHUB_ENV + fi + + - name: Download, verify and extract python standalone + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + Write-Output "Downloading, hash-checking, and extracting $env:python_source" + curl.exe -L -o "python-3-embed.tar.gz" $env:python_source + + $expectedHash = $env:python_sha256 + $actualHash = (Get-FileHash -Path "python-3-embed.tar.gz" -Algorithm SHA256).Hash.ToLower() + if ($actualHash -ne $expectedHash.ToLower()) { + Write-Error "SHA mismatch: Actual $actualHash doesn't match $expectedHash" + exit 1 + } else { Write-Output "Python SHA ok" } + + mkdir dotpythonpre -Force + mkdir dotpython -Force + mkdir dotpython/python -Force + tar -xf python-3-embed.tar.gz -C dotpythonpre + if (Test-Path dotpythonpre/python/install) { + Move-Item -Path dotpythonpre/python/install/* -Destination dotpython/python -Force + } elseif (Test-Path dotpythonpre/python) { + Move-Item -Path dotpythonpre/python/* -Destination dotpython/python -Force + } + + - name: Copy launchers_final files to dotpython + if: env.WINPYREQUIREMENTS != '' + shell: bash + run: | + cp -r winpython/portable/launchers_final/* dotpython/ + mkdir $env:dotwheelhouse + + - name: List dotpython contents (for debugging) + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + Get-ChildItem dotpython + Get-ChildItem dotpython\python + + - name: Prepare WinPython target structure + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + New-Item -ItemType Directory -Path $env:build_location + Get-ChildItem -Path dotpython -Force | Move-Item -Destination $env:build_location -Force + + - name: Download, checking hash and integrating pandoc binary + if: env.WINPYREQUIREMENTS != '' && env.PANDOC == '1' + shell: pwsh + run: | + $pandocZipPath = "pandoc.zip" + $tempDir = "pandoc_temp" + $targetDir = Join-Path $env:build_location "t" + Write-Host "Downloading Pandoc from $env:pandoc_source" + curl.exe -L -o $pandocZipPath $env:pandoc_source + + $expectedHash = $env:pandoc_sha256.ToLower() + $actualHash = (Get-FileHash -Path $pandocZipPath -Algorithm SHA256).Hash.ToLower() + + if ($actualHash -ne $expectedHash) { + Write-Error "Pandoc SHA mismatch: $actualHash vs expected $expectedHash" + exit 1 + } else { Write-Output "Pandoc SHA ok" } + + Expand-Archive -Path $pandocZipPath -DestinationPath $tempDir -Force + New-Item -ItemType Directory -Path $targetDir -Force | Out-Null + + Write-Output "Copying pandoc.exe to $targetDir" + Copy-Item -Path (Join-Path $tempDir "pandoc-3.1.9\pandoc.exe") -Destination $targetDir -Force + + Write-Output "Showing the content of $targetDir" + Get-ChildItem -Path $targetDir + + Write-Output "Cleaning up temporary files..." + Remove-Item -Path $tempDir -Recurse -Force + Remove-Item -Path $pandocZipPath -Force + + - name: Upgrade pip and patch launchers + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --upgrade pip + & "$env:build_location\python\python.exe" -m pip install --upgrade packaging==25.0 + & "$env:build_location\python\python.exe" -c "from wppm import wppm;dist=wppm.Distribution();dist.patch_standard_packages('pip', to_movable=True)" + + - name: Write env.ini file + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + $destDir = "$env:build_location\scripts" + echo "WINPYthon_exe=$env:WINPYthon_exe" > env.ini + echo "WINPYthon_subdirectory_name=$env:WINPYthon_subdirectory_name" >> env.ini + echo "WINPYVER=$env:WINPYVER" >> env.ini + echo "WINPYVER2=$env:WINPYVER2" >> env.ini + echo "WINPYFLAVOR=$env:WINPYFLAVOR" >> env.ini + echo "WINPYARCH=$env:WINPYARCH" >> env.ini + Copy-Item -Path "env.ini" -Destination "$destDir\env.ini" + + - name: Download main requirements to $env:dotwheelhouse + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip download --dest $env:dotwheelhouse --no-deps --require-hashes -r $env:WINPYREQUIREMENTS + + - name: Download additional wheelhouse requirements + if: env.WINPYREQUIREMENTSwhl != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip download --dest $env:destwheelhouse --no-deps --require-hashes -r $env:WINPYREQUIREMENTSwhl + + - name: Install requirements + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --no-deps --no-index --trusted-host=None --find-links=$env:dotwheelhouse --require-hashes -r $env:WINPYREQUIREMENTS + + - name: Generate Markdown content and pylock file + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + mkdir publish_output + + # Ensure unicode for wppm output + $env:PYTHONIOENCODING="utf-8" + + $destfile_md = "publish_output\WinPython$env:WINPYFLAVOR-$($env:WINPYARCH)bit-$env:WINPYVER2.md" + & "$env:build_location\python\python.exe" -m wppm -md | Out-File -FilePath $destfile_md -Encoding utf8 + + gc $destfile_md + + & "$env:build_location\python\python.exe" -m pip freeze | Out-File -FilePath dotpython\freeze.txt + $destfile_pylock = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --find-links=$env:dotwheelhouse -r dotpython\freeze.txt -o $destfile_pylock + + $outreq = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylock', r'$outreq')" + + if ($env:WINPYREQUIREMENTSwhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + $destfile_pylockwheel = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --require-hashes -r $env:WINPYREQUIREMENTSwhl -o $destfile_pylockwheel + + $outreqwheel = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylockwheel', r'$outreqwheel')" + Copy-Item -Path $outreqwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + Copy-Item -Path $destfile_pylockwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + } + + - name: Zip the result + if: env.WINPYREQUIREMENTS != '' && env.WINPYZIP == '1' + shell: pwsh + run: | + $destfile = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.zip" + Compress-Archive -Path "$env:build_location" -DestinationPath $destfile + + - name: 7z archive the result + if: env.WINPYREQUIREMENTS != '' && env.WINPY7Z == '1' + shell: pwsh + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.7z" + 7z a $destfile7z $env:build_location + + - name: 7z executable archive the result + if: env.WINPYREQUIREMENTS != '' && env.WINPYEXE == '1' + shell: pwsh + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.exe" + $SFXModulePath = "C:\Program Files\7-Zip\7z.sfx" + 7z a -t7z -sfx"$SFXModulePath" $destfile7z $env:build_location + + - name: generate hashes wppm style + if: env.WINPYREQUIREMENTS != '' + shell: pwsh + run: | + $DESTFILE="./publish_output/hashes.md" + Get-ChildItem -Path ".\publish_output\*.*" + # Get the list of files matching the pattern and pass them as arguments + $filesToHash = Get-ChildItem -Path ".\publish_output\*64*.*" + & "$env:build_location\python\python.exe" -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" @($filesToHash.FullName) | Out-File -FilePath $DESTFILE + gc $DESTFILE + + - name: Upload artifacts + if: env.WINPYREQUIREMENTS != '' + uses: actions/upload-artifact@v4 + with: + name: ${{ env.ARTIFACT_NAME }} + path: publish_output + retention-days: 66 # keeps artifact for 66 days diff --git a/.github/workflows/github_workflows_build-all.yml b/.github/workflows/github_workflows_build-all.yml new file mode 100644 index 00000000..c55b2597 --- /dev/null +++ b/.github/workflows/github_workflows_build-all.yml @@ -0,0 +1,432 @@ +name: Build WinPython Distribution for 3.13 and 3.14 +# matrix allows to avoid duplicated code in github_workflows_build-dot, github_workflows_build-whl, github_workflows_build-slim +# 2025-08-23a: merged code proposed per Gemini 2.5 flash, it corrected also PYTHONIOENCODING="utf-8" error +# 2025-08-23b: moved manually to Python-3.14.0rc2 +# 2025-08-25a: will use manual uploaded free-threading, as astral doesn't provide +# 2025-08-25b: move up all parameters +# 2025-09-07: one single workflow to reduce code duplication + +on: + workflow_dispatch: + inputs: + python_version: + description: 'Python version to build (3.13 or 3.14)' + required: true + default: '3.14' + type: choice + options: + - '3.13' + - '3.14' + +jobs: + build-winpython: + runs-on: windows-latest + + strategy: + fail-fast: true + matrix: + flavor: + - name: "dot" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0dot.txt" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_04\\requir.64-3_14_0_1dot.txt" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + ARTIFACT_NAME_313: "publish_313dot" + ARTIFACT_NAME_314: "publish_314dot" + python_sourcef_313: "https://github.com/astral-sh/python-build-standalone/releases/download/20250902/cpython-3.13.7+20250902-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f_313: "ffd3dd92f60041db8a9c24a5d84b915ece8ad4202cfd401b46bafaa4c8dab324" + python_sourcef_314: "https://github.com/astral-sh/python-build-standalone/releases/download/20250918/cpython-3.14.0rc3+20250918-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f_314: "05e593a278c1b6d3c872d909e8031eaedf7bd8e7df9de2bfea857b7230f0b4c5" + WINPYARCH: "64" + WINPYVERSION_313: "313" + WINPYVERSION_314: "314" + WINPYVER2_313: "3.13.7.0" + WINPYVER2_314: "3.14.0.1" + my_release_level: "" + build_location_313: "WPy64-31370" + build_location_314: "WPy64-31401" + - name: "slim" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0slim.txt" + REQUIREMENTS_314: "" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + ZIP: "0" + SEVEN_Z: "1" + EXE: "1" + PANDOC: "1" + ARTIFACT_NAME_313: "publish_313slim" + ARTIFACT_NAME_314: "" + python_sourcef_313: "https://github.com/astral-sh/python-build-standalone/releases/download/20250902/cpython-3.13.7+20250902-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f_313: "ffd3dd92f60041db8a9c24a5d84b915ece8ad4202cfd401b46bafaa4c8dab324" + python_sourcef_314: "" + python_sha256f_314: "" + WINPYARCH: "64" + WINPYVERSION_313: "313" + WINPYVERSION_314: "314" + WINPYVER2_313: "3.13.7.0" + WINPYVER2_314: "3.14.0.1" + my_release_level: "" + build_location_313: "WPy64-31370" + build_location_314: "WPy64-31401" + - name: "whl" + REQUIREMENTS_313: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0dot.txt" + REQUIREMENTS_314: "" + REQUIREMENTS_WHL_313: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0whl_wheels.txt" + REQUIREMENTS_WHL_314: "" + ZIP: "0" + SEVEN_Z: "1" + EXE: "0" + PANDOC: "0" + ARTIFACT_NAME_313: "publish_313whl" + ARTIFACT_NAME_314: "" + python_sourcef_313: "https://github.com/astral-sh/python-build-standalone/releases/download/20250902/cpython-3.13.7+20250902-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f_313: "ffd3dd92f60041db8a9c24a5d84b915ece8ad4202cfd401b46bafaa4c8dab324" + python_sourcef_314: "" + python_sha256f_314: "" + WINPYARCH: "64" + WINPYVERSION_313: "313" + WINPYVERSION_314: "314" + WINPYVER2_313: "3.13.7.0" + WINPYVER2_314: "3.14.0.1" + my_release_level: "" + build_location_313: "WPy64-31370" + build_location_314: "" + - name: "free" + REQUIREMENTS_313: "" + REQUIREMENTS_314: "winpython\\portable\\cycle_2025_04\\requir.64-3_14_0_1free.txt" + REQUIREMENTS_WHL_313: "" + REQUIREMENTS_WHL_314: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + ARTIFACT_NAME_313: "" + ARTIFACT_NAME_314: "publish_314free" + python_sourcef_313: "" + python_sha256f_313: "" + python_sourcef_314: "https://github.com/winpython/winpy.github.io/releases/download/20250918/cpython-3.14.0rc3+20250918-x86_64-pc-windows-msvc-freethreaded-install_only_stripped.tar.gz" + python_sha256f_314: "4cd678c30a3dfe4d21b017be2d7871797dc01cae023d4797ec0ada19f0bca346" + WINPYARCH: "64" + WINPYVERSION_313: "" + WINPYVERSION_314: "314" + WINPYVER2_313: "" + WINPYVER2_314: "3.14.0.1" + my_release_level: "" + build_location_313: "" + build_location_314: "WPy64-31401" + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set static and matrix variables based on selected Python version + shell: bash + run: | + PYTHON_VERSION="${{ github.event.inputs.python_version }}" + FLAVOR="${{ matrix.flavor.name }}" + if [ "$PYTHON_VERSION" = "3.13" ]; then + echo "WINPYrequirements=${{ matrix.flavor.REQUIREMENTS_313 }}" >> $GITHUB_ENV + echo "WINPYrequirementswhl=${{ matrix.flavor.REQUIREMENTS_WHL_313 }}" >> $GITHUB_ENV + echo "ARTIFACT_NAME=${{ matrix.flavor.ARTIFACT_NAME_313 }}" >> $GITHUB_ENV + echo "python_sourcef=${{ matrix.flavor.python_sourcef_313 }}" >> $GITHUB_ENV + echo "python_sha256f=${{ matrix.flavor.python_sha256f_313 }}" >> $GITHUB_ENV + echo "WINPYVERSION=${{ matrix.flavor.WINPYVERSION_313 }}" >> $GITHUB_ENV + echo "WINPYVER2=${{ matrix.flavor.WINPYVER2_313 }}" >> $GITHUB_ENV + echo "build_location=${{ matrix.flavor.build_location_313 }}" >> $GITHUB_ENV + echo "destwheelhouse=${{ matrix.flavor.build_location_313 }}\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "WINPYVER=${{ matrix.flavor.WINPYVER2_313 }}${{ matrix.flavor.name }}${{ matrix.flavor.my_release_level }}" >> $GITHUB_ENV + else + echo "WINPYrequirements=${{ matrix.flavor.REQUIREMENTS_314 }}" >> $GITHUB_ENV + echo "WINPYrequirementswhl=${{ matrix.flavor.REQUIREMENTS_WHL_314 }}" >> $GITHUB_ENV + echo "ARTIFACT_NAME=${{ matrix.flavor.ARTIFACT_NAME_314 }}" >> $GITHUB_ENV + echo "python_sourcef=${{ matrix.flavor.python_sourcef_314 }}" >> $GITHUB_ENV + echo "python_sha256f=${{ matrix.flavor.python_sha256f_314 }}" >> $GITHUB_ENV + echo "WINPYVERSION=${{ matrix.flavor.WINPYVERSION_314 }}" >> $GITHUB_ENV + echo "WINPYVER2=${{ matrix.flavor.WINPYVER2_314 }}" >> $GITHUB_ENV + echo "build_location=${{ matrix.flavor.build_location_314 }}" >> $GITHUB_ENV + echo "destwheelhouse=${{ matrix.flavor.build_location_314 }}\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "WINPYVER=${{ matrix.flavor.WINPYVER2_314 }}${{ matrix.flavor.name }}${{ matrix.flavor.my_release_level }}" >> $GITHUB_ENV + fi + echo "WINPYARCH=${{ matrix.flavor.WINPYARCH }}" >> $GITHUB_ENV + echo "WINPYFLAVOR=$FLAVOR" >> $GITHUB_ENV + echo "WINPYZIP=${{ matrix.flavor.ZIP }}" >> $GITHUB_ENV + echo "WINPY7Z=${{ matrix.flavor.SEVEN_Z }}" >> $GITHUB_ENV + echo "WINPYEXE=${{ matrix.flavor.EXE }}" >> $GITHUB_ENV + echo "PANDOC=${{ matrix.flavor.PANDOC }}" >> $GITHUB_ENV + echo "my_release_level=${{ matrix.flavor.my_release_level }}" >> $GITHUB_ENV + + echo "dotwheelhouse=dotpython\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "pandoc_source=https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" >> $GITHUB_ENV + echo "pandoc_sha256=11eb6dbe5286c9e5edb0cca4412e7d99ec6578ec04158b0b7fe11f7fd96688e5" >> $GITHUB_ENV + + - name: See variables + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + Write-Output "PYTHON_VERSION is $env:PYTHON_VERSION" + Write-Output "WINPYFLAVOR is $env:WINPYFLAVOR" + + Write-Output "WINPYrequirements is $env:WINPYrequirements" + Write-Output "WINPYrequirementswhl is $env:WINPYrequirementswhl" + Write-Output "ARTIFACT_NAME is $env:ARTIFACT_NAME" + + Write-Output "python_source is $env:python_source" + Write-Output "python_sha256 is $env:python_sha256" + + Write-Output "WINPYVERSION is $env:WINPYVERSION" + Write-Output "WINPYVER2 is $env:WINPYVER2" + Write-Output "build_location is $env:build_location" + + Write-Output "WINPYARCH is $env:WINPYARCH" + Write-Output "WINPYZIP is $env:WINPYZIP" + Write-Output "WINPY7Z is $env:WINPY7Z" + Write-Output "WINPYEXE is $env:WINPYEXE" + Write-Output "PANDOC is $env:PANDOC" + Write-Output "dotwheelhouse is $env:dotwheelhouse" + Write-Output "destwheelhouse is $env:destwheelhouse" + + Write-Output "pandoc_source is $env:pandoc_source" + Write-Output "pandoc_sha256 is $env:pandoc_sha256" + + Write-Output "WINPYVER is $env:WINPYVER" + + - name: Download python-3 standalone + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + Write-Output "python_sourcef used is $env:python_sourcef" + curl.exe -L -o "python-3-embed.tar.gz" $env:python_sourcef + # Calculate SHA256 hash + $filePath = "python-3-embed.tar.gz" + $expectedHash = $env:python_sha256f + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + - name: Extract python-3-embed.tar.gz to dotpython + if: env.ARTIFACT_NAME != '' + shell: bash + run: | + mkdir dotpython + tar -xf python-3-embed.tar.gz -C dotpython + + - name: Copy launchers_final files to dotpython + if: env.ARTIFACT_NAME != '' + shell: bash + run: | + cp -r winpython/portable/launchers_final/* dotpython/ + mkdir $env:dotwheelhouse + + - name: List dotpython contents (for debugging) + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + Get-ChildItem dotpython + + - name: Prepare WinPython target structure + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + New-Item -ItemType Directory -Path $env:build_location + Get-ChildItem -Path dotpython -Force | Move-Item -Destination $env:build_location -Force + + - name: Download and integrate pandoc binary + if: env.ARTIFACT_NAME != '' && env.PANDOC == '1' + shell: pwsh + run: | + # Define the URL for the Pandoc binary and the target path + $pandocUrl = "https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" + $pandocZipPath = "pandoc.zip" + $tempDir = "pandoc_temp" + $targetDir = "$env:build_location\t" + + # Download the zip file + Write-Host "Downloading Pandoc from $env:pandoc_source" + curl.exe -L -o $pandocZipPath $env:pandoc_source + + # Create a temporary directory for extraction + Write-Host "Creating temporary directory for extraction" + mkdir -p $tempDir + + # Unzip the contents to the temporary directory + Write-Host "Extracting archive to temporary directory" + Expand-Archive -Path $pandocZipPath -DestinationPath $tempDir + + # Create the final target directory + Write-Host "Creating final target directory: $targetDir" + if (-not (Test-Path -Path $targetDir)) { + mkdir -p $targetDir + } + + # Find and copy only the pandoc.exe file + Write-Host "Copying pandoc.exe to $targetDir" + Copy-Item -Path (Join-Path $tempDir "pandoc-3.1.9\pandoc.exe") -Destination $targetDir -Force + + # Optional: Verify the contents + Write-Host "Listing contents of $targetDir" + Get-ChildItem -Path $targetDir + + # Calculate SHA256 hash + $filePath = $pandocZipPath + $expectedHash = $env:pandoc_sha256 + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + # Optional: Clean up temporary files + Write-Host "Cleaning up temporary files..." + Remove-Item -Path $tempDir -Recurse -Force + Remove-Item -Path $pandocZipPath -Force + + + - name: Upgrade pip and patch launchers + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --upgrade pip + & "$env:build_location\python\python.exe" -m pip install --upgrade packaging==25.0 + & "$env:build_location\python\python.exe" -c "from wppm import wppm;dist=wppm.Distribution();dist.patch_standard_packages('pip', to_movable=True)" + + - name: Write env.ini file + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + $destDir = "$env:build_location\scripts" + echo "WINPYthon_exe=$env:WINPYthon_exe" > env.ini + echo "WINPYthon_subdirectory_name=$env:WINPYthon_subdirectory_name" >> env.ini + echo "WINPYVER=$env:WINPYVER" >> env.ini + echo "WINPYVER2=$env:WINPYVER2" >> env.ini + echo "WINPYFLAVOR=$env:WINPYFLAVOR" >> env.ini + echo "WINPYARCH=$env:WINPYARCH" >> env.ini + Copy-Item -Path "env.ini" -Destination "$destDir\env.ini" + + - name: Download main requirements to $env:dotwheelhouse + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + + & "$env:build_location\python\python.exe" -m pip download --dest $env:dotwheelhouse --no-deps --require-hashes -r $env:WINPYrequirements + + - name: Download additional wheelhouse requirements + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + & "$env:build_location\python\python.exe" -m pip download --dest $env:destwheelhouse --no-deps --require-hashes -r $env:WINPYrequirementswhl + } + + - name: Install requirements + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --no-deps --no-index --trusted-host=None --find-links=$env:dotwheelhouse --require-hashes -r $env:WINPYrequirements + + - name: Generate Markdown content and pylock file + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + mkdir publish_output + + # Ensure unicode for wppm output + $env:PYTHONIOENCODING="utf-8" + + $destfile_md = "publish_output\WinPython$env:WINPYFLAVOR-$($env:WINPYARCH)bit-$env:WINPYVER2.md" + & "$env:build_location\python\python.exe" -m wppm -md | Out-File -FilePath $destfile_md -Encoding utf8 + + gc $destfile_md + + & "$env:build_location\python\python.exe" -m pip freeze | Out-File -FilePath dotpython\freeze.txt + $destfile_pylock = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --find-links=$env:dotwheelhouse -r dotpython\freeze.txt -o $destfile_pylock + + $outreq = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylock', r'$outreq')" + + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + $destfile_pylockwheel = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --require-hashes -r $env:WINPYrequirementswhl -o $destfile_pylockwheel + + $outreqwheel = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylockwheel', r'$outreqwheel')" + Copy-Item -Path $outreqwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + Copy-Item -Path $destfile_pylockwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + + } + + - name: Zip the result + if: env.ARTIFACT_NAME != '' && env.WINPYZIP == '1' + shell: pwsh + run: | + $destfile = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.zip" + Compress-Archive -Path "$env:build_location" -DestinationPath $destfile + + - name: 7z archive the result + if: env.ARTIFACT_NAME != '' && env.WINPY7Z == '1' + shell: pwsh + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.7z" + $sourceDir = "$env:build_location" + 7z a $destfile7z $sourceDir + + - name: 7z executable archive the result + if: env.ARTIFACT_NAME != '' && env.WINPYEXE == '1' + shell: pwsh + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.exe" + $sourceDir = "$env:build_location" + + # Define the standard 7-Zip installation path (adjust if using a custom install) + $SevenZipDir = "C:\Program Files\7-Zip" + Get-ChildItem $SevenZipDir + # Use the full path to the SFX module + $SFXModulePath = "C:\Program Files\7-Zip\7z.sfx" + + #7z a -sfx $destfile7z $sourceDir + #7z a -t7z -sfx7z.sfx $destfile7z $sourceDir + 7z a -t7z -sfx"$SFXModulePath" $destfile7z $sourceDir + + - name: generate hashes wppm style + if: env.ARTIFACT_NAME != '' + shell: pwsh + run: | + $DESTFILE="./publish_output/hashes.md" + Get-ChildItem -Path ".\publish_output\*.*" + # Get the list of files matching the pattern and pass them as arguments + $filesToHash = Get-ChildItem -Path ".\publish_output\*64*.*" + & "$env:build_location\python\python.exe" -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" @($filesToHash.FullName) | Out-File -FilePath $DESTFILE + gc $DESTFILE + + # Example artifact upload step (optional) + - name: Upload artifacts + if: env.ARTIFACT_NAME != '' + uses: actions/upload-artifact@v4 + with: + name: ${{ env.ARTIFACT_NAME }} + path: publish_output + retention-days: 66 # keeps artifact for 66 days diff --git a/.github/workflows/github_workflows_build-all_3.13.yml b/.github/workflows/github_workflows_build-all_3.13.yml new file mode 100644 index 00000000..c9c3c7c3 --- /dev/null +++ b/.github/workflows/github_workflows_build-all_3.13.yml @@ -0,0 +1,336 @@ +name: Build WinPython Distribution for 3.13 +# matrix allows to avoid duplicated code in github_workflows_build-dot, github_workflows_build-whl, github_workflows_build-slim +# 2025-08-23a: merged code proposed per Gemini 2.5 flash, it corrected also PYTHONIOENCODING="utf-8" error +# 2025-08-23b: moved manually to Python-3.13.7 +# 2025-08-25a: will use manual uploaded free-threading, as astral doesn't provide +# 2025-08-25b: move up all parameters +on: + workflow_dispatch: + +jobs: + build-winpython: + runs-on: windows-latest + + strategy: + fail-fast: true # Allows other matrix jobs to complete even if one fails + matrix: + # Define different WinPython build configurations + flavor_config: + # WinPython Dot configuration + - FLAVOR: "dot" + REQUIREMENTS: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0dotb4.txt" + REQUIREMENTS_WHL: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + ARTIFACT_NAME: "publish_313dot" + python_sourcef: "https://github.com/astral-sh/python-build-standalone/releases/download/20250818/cpython-3.13.7+20250818-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f: "d60173a7693c3134b8364814b80f98ddde0638e0e75e5b004f37452fccf67a33" + WINPYARCH: "64" + WINPYVERSION: "313" + WINPYVER2: "3.13.7.0" + my_release_level: "b4" + build_location: "WPy64-3170b4" + + # WinPython Slim configuration + - FLAVOR: "slim" + REQUIREMENTS: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0slimb4.txt" + REQUIREMENTS_WHL: "" + ZIP: "0" + SEVEN_Z: "1" + EXE: "1" + PANDOC: "1" + ARTIFACT_NAME: "publish_313slim" + python_sourcef: "https://github.com/astral-sh/python-build-standalone/releases/download/20250818/cpython-3.13.7+20250818-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f: "d60173a7693c3134b8364814b80f98ddde0638e0e75e5b004f37452fccf67a33" + WINPYARCH: "64" + WINPYVERSION: "313" + WINPYVER2: "3.13.7.0" + my_release_level: "b4" + build_location: "WPy64-3170b4" + + # WinPython Whl configuration + - FLAVOR: "whl" + REQUIREMENTS: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0dotb4.txt" # Note: Original whl used dot requirements, verify if this is intended + REQUIREMENTS_WHL: "winpython\\portable\\cycle_2025_04\\requir.64-3_13_7_0whlb4_wheels.txt" + ZIP: "0" + SEVEN_Z: "1" + EXE: "0" + PANDOC: "0" + ARTIFACT_NAME: "publish_313whl" + python_sourcef: "https://github.com/astral-sh/python-build-standalone/releases/download/20250818/cpython-3.13.7+20250818-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f: "d60173a7693c3134b8364814b80f98ddde0638e0e75e5b004f37452fccf67a33" + WINPYARCH: "64" + WINPYVERSION: "313" + WINPYVER2: "3.13.7.0" + my_release_level: "b4" + build_location: "WPy64-3170b4" + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set static variables and Python version + shell: bash + run: | + # Set matrix-specific variables + echo "WINPYARCH=${{ matrix.flavor_config.WINPYARCH }}" >> $GITHUB_ENV + echo "WINPYVERSION=${{ matrix.flavor_config.WINPYVERSION }}" >> $GITHUB_ENV + + echo "build_location=${{ matrix.flavor_config.build_location }}" >> $GITHUB_ENV + echo "dotwheelhouse=dotpython\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "destwheelhouse=${{ matrix.flavor_config.build_location }}\\wheelhouse\\included.wheels" >> $GITHUB_ENV + + echo "WINPYVER2=${{ matrix.flavor_config.WINPYVER2 }}" >> $GITHUB_ENV + echo "my_release_level=${{ matrix.flavor_config.my_release_level }}" >> $GITHUB_ENV + echo "WINPYVER=${{ matrix.flavor_config.WINPYVER2 }}${{ matrix.flavor_config.FLAVOR }}${{ matrix.flavor_config.my_release_level }}" >> $GITHUB_ENV + + # Set matrix-specific variables + echo "WINPYFLAVOR=${{ matrix.flavor_config.FLAVOR }}" >> $GITHUB_ENV + echo "WINPYrequirements=${{ matrix.flavor_config.REQUIREMENTS }}" >> $GITHUB_ENV + echo "WINPYrequirementswhl=${{ matrix.flavor_config.REQUIREMENTS_WHL }}" >> $GITHUB_ENV + echo "WINPYZIP=${{ matrix.flavor_config.ZIP }}" >> $GITHUB_ENV + echo "WINPY7Z=${{ matrix.flavor_config.SEVEN_Z }}" >> $GITHUB_ENV + echo "WINPYEXE=${{ matrix.flavor_config.EXE }}" >> $GITHUB_ENV + + echo "python_sourcef=${{ matrix.flavor_config.python_sourcef }}" >> $GITHUB_ENV + echo "python_sha256f=${{ matrix.flavor_config.python_sha256f }}" >> $GITHUB_ENV + + echo "pandoc_source=https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" >> $GITHUB_ENV + echo "pandoc_sha256=11eb6dbe5286c9e5edb0cca4412e7d99ec6578ec04158b0b7fe11f7fd96688e5" >> $GITHUB_ENV + + + - name: See variables + shell: pwsh + run: | + Write-Output "WINPYVERSION is $env:WINPYVERSION" + Write-Output "WINPYFLAVOR is $env:WINPYFLAVOR" + Write-Output "python_sourcef is $env:python_sourcef" + Write-Output "python_sha256f is $env:python_sha256f" + Write-Output "python_source is $env:python_source" + Write-Output "python_sha256 is $env:python_sha256" + Write-Output "WINPYrequirements is $env:WINPYrequirements" + Write-Output "WINPYrequirementswhl is $env:WINPYrequirementswhl" + Write-Output "WINPYZIP is $env:WINPYZIP" + Write-Output "WINPY7Z is $env:WINPY7Z" + Write-Output "WINPYEXE is $env:WINPYEXE" + Write-Output "build_location is $env:build_location" + Write-Output "dotwheelhouse is $env:dotwheelhouse" + Write-Output "destwheelhouse is $env:destwheelhouse" + Write-Output "WINPYVER is $env:WINPYVER" + Write-Output "WINPYVER2 is $env:WINPYVER2" + + - name: Download python-3 standalone + shell: pwsh + run: | + Write-Output "python_sourcef used is $env:python_sourcef" + curl.exe -L -o "python-3-embed.tar.gz" $env:python_sourcef + # Calculate SHA256 hash + $filePath = "python-3-embed.tar.gz" + $expectedHash = $env:python_sha256f + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + - name: Extract python-3-embed.tar.gz to dotpython + shell: bash + run: | + mkdir dotpython + tar -xf python-3-embed.tar.gz -C dotpython + + - name: Copy launchers_final files to dotpython + shell: bash + run: | + cp -r winpython/portable/launchers_final/* dotpython/ + mkdir $env:dotwheelhouse + + - name: List dotpython contents (for debugging) + shell: pwsh + run: | + Get-ChildItem dotpython + + - name: Prepare WinPython target structure + shell: pwsh + run: | + New-Item -ItemType Directory -Path $env:build_location + Get-ChildItem -Path dotpython -Force | Move-Item -Destination $env:build_location -Force + + - name: Download and integrate pandoc binary + shell: pwsh + if: ${{ matrix.flavor_config.PANDOC == '1' }} + run: | + # Define the URL for the Pandoc binary and the target path + $pandocUrl = "https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" + $pandocZipPath = "pandoc.zip" + $tempDir = "pandoc_temp" + $targetDir = "$env:build_location\t" + + # Download the zip file + Write-Host "Downloading Pandoc from $env:pandoc_source" + curl.exe -L -o $pandocZipPath $env:pandoc_source + + # Create a temporary directory for extraction + Write-Host "Creating temporary directory for extraction" + mkdir -p $tempDir + + # Unzip the contents to the temporary directory + Write-Host "Extracting archive to temporary directory" + Expand-Archive -Path $pandocZipPath -DestinationPath $tempDir + + # Create the final target directory + Write-Host "Creating final target directory: $targetDir" + if (-not (Test-Path -Path $targetDir)) { + mkdir -p $targetDir + } + + # Find and copy only the pandoc.exe file + Write-Host "Copying pandoc.exe to $targetDir" + Copy-Item -Path (Join-Path $tempDir "pandoc-3.1.9\pandoc.exe") -Destination $targetDir -Force + + # Optional: Verify the contents + Write-Host "Listing contents of $targetDir" + Get-ChildItem -Path $targetDir + + # Calculate SHA256 hash + $filePath = $pandocZipPath + $expectedHash = $env:pandoc_sha256 + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + # Optional: Clean up temporary files + Write-Host "Cleaning up temporary files..." + Remove-Item -Path $tempDir -Recurse -Force + Remove-Item -Path $pandocZipPath -Force + + + - name: Upgrade pip and patch launchers + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --upgrade pip + & "$env:build_location\python\python.exe" -m pip install --upgrade packaging==25.0 + & "$env:build_location\python\python.exe" -c "from wppm import wppm;dist=wppm.Distribution();dist.patch_standard_packages('pip', to_movable=True)" + + - name: Write env.ini file + shell: pwsh + run: | + $destDir = "$env:build_location\scripts" + echo "WINPYthon_exe=$env:WINPYthon_exe" > env.ini + echo "WINPYthon_subdirectory_name=$env:WINPYthon_subdirectory_name" >> env.ini + echo "WINPYVER=$env:WINPYVER" >> env.ini + echo "WINPYVER2=$env:WINPYVER2" >> env.ini + echo "WINPYFLAVOR=$env:WINPYFLAVOR" >> env.ini + echo "WINPYARCH=$env:WINPYARCH" >> env.ini + Copy-Item -Path "env.ini" -Destination "$destDir\env.ini" + + - name: Download main requirements to $env:dotwheelhouse + shell: pwsh + run: | + + & "$env:build_location\python\python.exe" -m pip download --dest $env:dotwheelhouse --no-deps --require-hashes -r $env:WINPYrequirements + + - name: Download additional wheelhouse requirements + shell: pwsh + run: | + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + & "$env:build_location\python\python.exe" -m pip download --dest $env:destwheelhouse --no-deps --require-hashes -r $env:WINPYrequirementswhl + } + + - name: Install requirements + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --no-deps --no-index --trusted-host=None --find-links=$env:dotwheelhouse --require-hashes -r $env:WINPYrequirements + + - name: Generate Markdown content and pylock file + shell: pwsh + run: | + mkdir publish_output + + # Ensure unicode for wppm output + $env:PYTHONIOENCODING="utf-8" + + $destfile_md = "publish_output\WinPython$env:WINPYFLAVOR-$($env:WINPYARCH)bit-$env:WINPYVER2.md" + & "$env:build_location\python\python.exe" -m wppm -md | Out-File -FilePath $destfile_md -Encoding utf8 + + gc $destfile_md + + & "$env:build_location\python\python.exe" -m pip freeze | Out-File -FilePath dotpython\freeze.txt + $destfile_pylock = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --find-links=$env:dotwheelhouse -r dotpython\freeze.txt -o $destfile_pylock + + $outreq = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylock', r'$outreq')" + + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + $destfile_pylockwheel = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --require-hashes -r $env:WINPYrequirementswhl -o $destfile_pylockwheel + + $outreqwheel = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylockwheel', r'$outreqwheel')" + Copy-Item -Path $outreqwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + Copy-Item -Path $destfile_pylockwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + + } + + - name: Zip the result + shell: pwsh + if: ${{ matrix.flavor_config.ZIP == '1' }} + run: | + $destfile = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.zip" + Compress-Archive -Path "$env:build_location" -DestinationPath $destfile + + - name: 7z archive the result + shell: pwsh + if: ${{ matrix.flavor_config.SEVEN_Z == '1' }} + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.7z" + $sourceDir = "$env:build_location" + 7z a $destfile7z $sourceDir + + - name: 7z executable archive the result + shell: pwsh + if: ${{ matrix.flavor_config.EXE == '1' }} + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.exe" + $sourceDir = "$env:build_location" + 7z a -sfx $destfile7z $sourceDir + + - name: generate hashes wppm style + shell: pwsh + run: | + $DESTFILE="./publish_output/hashes.md" + Get-ChildItem -Path ".\publish_output\*.*" + # Get the list of files matching the pattern and pass them as arguments + $filesToHash = Get-ChildItem -Path ".\publish_output\*64*.*" + & "$env:build_location\python\python.exe" -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" @($filesToHash.FullName) | Out-File -FilePath $DESTFILE + gc $DESTFILE + + - name: Upload WinPython folder as artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.flavor_config.ARTIFACT_NAME }} + path: publish_output + retention-days: 66 # keeps artifact for 66 days diff --git a/.github/workflows/github_workflows_build-all_3.14.yml b/.github/workflows/github_workflows_build-all_3.14.yml new file mode 100644 index 00000000..03b84bc8 --- /dev/null +++ b/.github/workflows/github_workflows_build-all_3.14.yml @@ -0,0 +1,319 @@ +name: Build WinPython Distribution for 3.14 +# matrix allows to avoid duplicated code in github_workflows_build-dot, github_workflows_build-whl, github_workflows_build-slim +# 2025-08-23a: merged code proposed per Gemini 2.5 flash, it corrected also PYTHONIOENCODING="utf-8" error +# 2025-08-23b: moved manually to Python-3.14.0rc2 +# 2025-08-25a: will use manual uploaded free-threading, as astral doesn't provide +# 2025-08-25b: move up all parameters +on: + workflow_dispatch: + +jobs: + build-winpython: + runs-on: windows-latest + + strategy: + fail-fast: true # Allows other matrix jobs to complete even if one fails + matrix: + # Define different WinPython build configurations + flavor_config: + # WinPython Dot configuration + - FLAVOR: "dot" + REQUIREMENTS: "winpython\\portable\\cycle_2025_04\\requir.64-3_14_0_1dotb3.txt" + REQUIREMENTS_WHL: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + ARTIFACT_NAME: "publish_314dot" + python_sourcef: "https://github.com/astral-sh/python-build-standalone/releases/download/20250818/cpython-3.14.0rc2+20250818-x86_64-pc-windows-msvc-install_only_stripped.tar.gz" + python_sha256f: "361a49531a5d4bdc72bbccc81f7b5881b5eb751e3b47683b233cacae5aeeaeed" + WINPYARCH: "64" + WINPYVERSION: "314" + WINPYVER2: "3.14.0.1" + my_release_level: "b4" + build_location: "WPy64-31401b4" + + + - FLAVOR: "free" + REQUIREMENTS: "winpython\\portable\\cycle_2025_04\\requir.64-3_14_0_1dotb3.txt" + REQUIREMENTS_WHL: "" + ZIP: "1" + SEVEN_Z: "0" + EXE: "1" + PANDOC: "0" + ARTIFACT_NAME: "publish_314free" + python_sourcef: "https://github.com/winpython/winpy.github.io/releases/download/20250825/cpython-3.14.0rc2+20250825-x86_64-pc-windows-msvc-freethreaded-install_only_stripped.tar.gz" + python_sha256f: "dda491993214ae78948297848aa9d75d1d10762c33ff16487793ca5205516e4a" + WINPYARCH: "64" + WINPYVERSION: "314" + WINPYVER2: "3.14.0.1" + my_release_level: "b4" + build_location: "WPy64-31401b4" + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set static variables and Python version + shell: bash + run: | + # Set matrix-specific variables + echo "WINPYARCH=${{ matrix.flavor_config.WINPYARCH }}" >> $GITHUB_ENV + echo "WINPYVERSION=${{ matrix.flavor_config.WINPYVERSION }}" >> $GITHUB_ENV + + echo "build_location=${{ matrix.flavor_config.build_location }}" >> $GITHUB_ENV + echo "dotwheelhouse=dotpython\\wheelhouse\\included.wheels" >> $GITHUB_ENV + echo "destwheelhouse=${{ matrix.flavor_config.build_location }}\\wheelhouse\\included.wheels" >> $GITHUB_ENV + + echo "WINPYVER2=${{ matrix.flavor_config.WINPYVER2 }}" >> $GITHUB_ENV + echo "my_release_level=${{ matrix.flavor_config.my_release_level }}" >> $GITHUB_ENV + echo "WINPYVER=${{ matrix.flavor_config.WINPYVER2 }}${{ matrix.flavor_config.FLAVOR }}${{ matrix.flavor_config.my_release_level }}" >> $GITHUB_ENV + + # Set matrix-specific variables + echo "WINPYFLAVOR=${{ matrix.flavor_config.FLAVOR }}" >> $GITHUB_ENV + echo "WINPYrequirements=${{ matrix.flavor_config.REQUIREMENTS }}" >> $GITHUB_ENV + echo "WINPYrequirementswhl=${{ matrix.flavor_config.REQUIREMENTS_WHL }}" >> $GITHUB_ENV + echo "WINPYZIP=${{ matrix.flavor_config.ZIP }}" >> $GITHUB_ENV + echo "WINPY7Z=${{ matrix.flavor_config.SEVEN_Z }}" >> $GITHUB_ENV + echo "WINPYEXE=${{ matrix.flavor_config.EXE }}" >> $GITHUB_ENV + + echo "python_sourcef=${{ matrix.flavor_config.python_sourcef }}" >> $GITHUB_ENV + echo "python_sha256f=${{ matrix.flavor_config.python_sha256f }}" >> $GITHUB_ENV + + echo "pandoc_source=https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" >> $GITHUB_ENV + echo "pandoc_sha256=11eb6dbe5286c9e5edb0cca4412e7d99ec6578ec04158b0b7fe11f7fd96688e5" >> $GITHUB_ENV + + + - name: See variables + shell: pwsh + run: | + Write-Output "WINPYVERSION is $env:WINPYVERSION" + Write-Output "WINPYFLAVOR is $env:WINPYFLAVOR" + Write-Output "python_sourcef is $env:python_sourcef" + Write-Output "python_sha256f is $env:python_sha256f" + Write-Output "python_source is $env:python_source" + Write-Output "python_sha256 is $env:python_sha256" + Write-Output "WINPYrequirements is $env:WINPYrequirements" + Write-Output "WINPYrequirementswhl is $env:WINPYrequirementswhl" + Write-Output "WINPYZIP is $env:WINPYZIP" + Write-Output "WINPY7Z is $env:WINPY7Z" + Write-Output "WINPYEXE is $env:WINPYEXE" + Write-Output "build_location is $env:build_location" + Write-Output "dotwheelhouse is $env:dotwheelhouse" + Write-Output "destwheelhouse is $env:destwheelhouse" + Write-Output "WINPYVER is $env:WINPYVER" + Write-Output "WINPYVER2 is $env:WINPYVER2" + + - name: Download python-3 standalone + shell: pwsh + run: | + Write-Output "python_sourcef used is $env:python_sourcef" + curl.exe -L -o "python-3-embed.tar.gz" $env:python_sourcef + # Calculate SHA256 hash + $filePath = "python-3-embed.tar.gz" + $expectedHash = $env:python_sha256f + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + - name: Extract python-3-embed.tar.gz to dotpython + shell: bash + run: | + mkdir dotpython + tar -xf python-3-embed.tar.gz -C dotpython + + - name: Copy launchers_final files to dotpython + shell: bash + run: | + cp -r winpython/portable/launchers_final/* dotpython/ + mkdir $env:dotwheelhouse + + - name: List dotpython contents (for debugging) + shell: pwsh + run: | + Get-ChildItem dotpython + + - name: Prepare WinPython target structure + shell: pwsh + run: | + New-Item -ItemType Directory -Path $env:build_location + Get-ChildItem -Path dotpython -Force | Move-Item -Destination $env:build_location -Force + + - name: Download and integrate pandoc binary + shell: pwsh + if: ${{ matrix.flavor_config.PANDOC == '1' }} + run: | + # Define the URL for the Pandoc binary and the target path + $pandocUrl = "https://github.com/jgm/pandoc/releases/download/3.1.9/pandoc-3.1.9-windows-x86_64.zip" + $pandocZipPath = "pandoc.zip" + $tempDir = "pandoc_temp" + $targetDir = "$env:build_location\t" + + # Download the zip file + Write-Host "Downloading Pandoc from $env:pandoc_source" + curl.exe -L -o $pandocZipPath $env:pandoc_source + + # Create a temporary directory for extraction + Write-Host "Creating temporary directory for extraction" + mkdir -p $tempDir + + # Unzip the contents to the temporary directory + Write-Host "Extracting archive to temporary directory" + Expand-Archive -Path $pandocZipPath -DestinationPath $tempDir + + # Create the final target directory + Write-Host "Creating final target directory: $targetDir" + if (-not (Test-Path -Path $targetDir)) { + mkdir -p $targetDir + } + + # Find and copy only the pandoc.exe file + Write-Host "Copying pandoc.exe to $targetDir" + Copy-Item -Path (Join-Path $tempDir "pandoc-3.1.9\pandoc.exe") -Destination $targetDir -Force + + # Optional: Verify the contents + Write-Host "Listing contents of $targetDir" + Get-ChildItem -Path $targetDir + + # Calculate SHA256 hash + $filePath = $pandocZipPath + $expectedHash = $env:pandoc_sha256 + + $hashObject = Get-FileHash -Path $filePath -Algorithm SHA256 + $actualHash = $hashObject.Hash.ToLower() + + if ($actualHash -eq $expectedHash.ToLower()) { + Write-Output "Hash matches." + } else { + Write-Output "Hash does NOT match." + Write-Output "Actual: $actualHash" + Write-Output "Expected: $expectedHash" + exit 1 + } + + # Optional: Clean up temporary files + Write-Host "Cleaning up temporary files..." + Remove-Item -Path $tempDir -Recurse -Force + Remove-Item -Path $pandocZipPath -Force + + + - name: Upgrade pip and patch launchers + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --upgrade pip + & "$env:build_location\python\python.exe" -m pip install --upgrade packaging==25.0 + & "$env:build_location\python\python.exe" -c "from wppm import wppm;dist=wppm.Distribution();dist.patch_standard_packages('pip', to_movable=True)" + + - name: Write env.ini file + shell: pwsh + run: | + $destDir = "$env:build_location\scripts" + echo "WINPYthon_exe=$env:WINPYthon_exe" > env.ini + echo "WINPYthon_subdirectory_name=$env:WINPYthon_subdirectory_name" >> env.ini + echo "WINPYVER=$env:WINPYVER" >> env.ini + echo "WINPYVER2=$env:WINPYVER2" >> env.ini + echo "WINPYFLAVOR=$env:WINPYFLAVOR" >> env.ini + echo "WINPYARCH=$env:WINPYARCH" >> env.ini + Copy-Item -Path "env.ini" -Destination "$destDir\env.ini" + + - name: Download main requirements to $env:dotwheelhouse + shell: pwsh + run: | + + & "$env:build_location\python\python.exe" -m pip download --dest $env:dotwheelhouse --no-deps --require-hashes -r $env:WINPYrequirements + + - name: Download additional wheelhouse requirements + shell: pwsh + run: | + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + & "$env:build_location\python\python.exe" -m pip download --dest $env:destwheelhouse --no-deps --require-hashes -r $env:WINPYrequirementswhl + } + + - name: Install requirements + shell: pwsh + run: | + & "$env:build_location\python\python.exe" -m pip install --no-deps --no-index --trusted-host=None --find-links=$env:dotwheelhouse --require-hashes -r $env:WINPYrequirements + + - name: Generate Markdown content and pylock file + shell: pwsh + run: | + mkdir publish_output + + # Ensure unicode for wppm output + $env:PYTHONIOENCODING="utf-8" + + $destfile_md = "publish_output\WinPython$env:WINPYFLAVOR-$($env:WINPYARCH)bit-$env:WINPYVER2.md" + & "$env:build_location\python\python.exe" -m wppm -md | Out-File -FilePath $destfile_md -Encoding utf8 + + gc $destfile_md + + & "$env:build_location\python\python.exe" -m pip freeze | Out-File -FilePath dotpython\freeze.txt + $destfile_pylock = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --find-links=$env:dotwheelhouse -r dotpython\freeze.txt -o $destfile_pylock + + $outreq = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_').txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylock', r'$outreq')" + + if ($env:WINPYrequirementswhl -eq "") { + Write-Output "No additional wheelhouse requirements." + } else { + $destfile_pylockwheel = "publish_output\pylock.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.toml" + & "$env:build_location\python\python.exe" -m pip lock --no-deps --require-hashes -r $env:WINPYrequirementswhl -o $destfile_pylockwheel + + $outreqwheel = "publish_output\requir.$env:WINPYARCH-$($env:WINPYVER -replace '\.', '_')_wheels.txt" + & "$env:build_location\python\python.exe" -X utf8 -c "from wppm import wheelhouse as wh; wh.pylock_to_req(r'$destfile_pylockwheel', r'$outreqwheel')" + Copy-Item -Path $outreqwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + Copy-Item -Path $destfile_pylockwheel -Destination (Join-Path $env:build_location "wheelhouse") -Force + + } + + - name: Zip the result + shell: pwsh + if: ${{ matrix.flavor_config.ZIP == '1' }} + run: | + $destfile = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.zip" + Compress-Archive -Path "$env:build_location" -DestinationPath $destfile + + - name: 7z archive the result + shell: pwsh + if: ${{ matrix.flavor_config.SEVEN_Z == '1' }} + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.7z" + $sourceDir = "$env:build_location" + 7z a $destfile7z $sourceDir + + - name: 7z executable archive the result + shell: pwsh + if: ${{ matrix.flavor_config.EXE == '1' }} + run: | + $destfile7z = "publish_output\WinPython$env:WINPYARCH-$env:WINPYVER.exe" + $sourceDir = "$env:build_location" + 7z a -sfx $destfile7z $sourceDir + + - name: generate hashes wppm style + shell: pwsh + run: | + $DESTFILE="./publish_output/hashes.md" + Get-ChildItem -Path ".\publish_output\*.*" + # Get the list of files matching the pattern and pass them as arguments + $filesToHash = Get-ChildItem -Path ".\publish_output\*64*.*" + & "$env:build_location\python\python.exe" -c "import sys;from wppm import hash; hash.print_hashes(sys.argv[1:])" @($filesToHash.FullName) | Out-File -FilePath $DESTFILE + gc $DESTFILE + + - name: Upload WinPython folder as artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.flavor_config.ARTIFACT_NAME }} + path: publish_output + retention-days: 66 # keeps artifact for 66 days diff --git a/.gitignore b/.gitignore index ba28fecb..b09135e1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,23 +1,23 @@ -# Compiled python files -*.py[oc] - -.exe +# Compiled python files +*.exe +*.pyc +*.pyo +*.so +*.class +*~ .settings -.spyderproject -.ropeproject -.project -.pydevproject -.orig -.DS_Store -^build/ -^dist/ -^bin/ -^tools/gnuwin32/ -^tools/TortoiseHg/ -^tools/WinMerge/ -^winpython.egg-info/ +*.log + +build/ +/dist/ +/bin/ MANIFEST -Thumbs.db -*~ -*.swp +/winpython.egg-info/ +.tox/ +.vagrant +/.coverage +/htmlcov/ +/env/ +.mypy_cache/ +.settings diff --git a/LICENSE b/LICENSE index d584143f..ea6be0d7 100644 --- a/LICENSE +++ b/LICENSE @@ -1,5 +1,9 @@ + + MIT licence + Copyright (c) 2012-2014 Pierre Raybaut - Copyright (c) 2014-2023+ The Winpython development team https://github.com/winpython/ + Copyright (c) 2014-2024+ The Winpython development team https://github.com/winpython/ + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/Qt5_requirements64.txt b/Qt5_requirements64.txt deleted file mode 100644 index a72667c1..00000000 --- a/Qt5_requirements64.txt +++ /dev/null @@ -1,373 +0,0 @@ -# the essential -wheel -pywin32 - -# compilers -cython -pycparser -cffi -numba -maturin - -# done in pre-step in mkl -numpy -scipy -numexpr -##mkl_service - -# pytorch eco-system -Torch -torchvision -torchaudio -botorch -fastai -dask_ml - -#LLM huggingface -openai -transformers[torch] -accelerate - - -# complementary tools -mypy -black -pep8 -twine -pytest -coverage -hypothesis -pybind11 -flit -poetry -virtualenv -pympler - -sqlite_bro -baresql -idlex - -# scientific -matplotlib -sympy - -scikit_learn -scikit_image - -SQLAlchemy -alembic - -#statistic -statsmodels -pmdarima -pymc - -# to become skrub -dirty_cat - -pandas -# pandas-datareader -xarray - -#pdf -pdfrw -reportlab - -#git -gitdb -gitpython - -# Jupyter -jupyter -# jupyterlab, ipython -papermill -ipython_sql -ipympl -ipyleaflet -ipycanvas -#not popular jupyterlab_rise - -jedi - -# gui -seaborn -altair -plotnine -plotly -bokeh -datashader -holoviews -mpld3 -networkx -bqplot -imageio -imageio_ffmpeg -hvplot -wordcloud -panel - - -# gui geographic -geopandas -geopy -pydeck -# geoviews has no success -gdal - -#solvers -pycosat -ecos -qpsolvers -cvxpy -pulp - -# Qt5 - -# QT -spyder -pyzo -pyqtgraph -qtconsole -guiqwt -PythonQwt -guidata -formlayout -folium - -# web -Flask -Django -python_dotenv -uvicorn -beautifulsoup4 -regex -lxml -html5lib -requests -datasette -yarl -xmltodict -pystache -pysocks -pyjwt -mako - -# parallelize (and replace celery) -joblib -dask[complete] -dask_image -cloudpickle -fastparquet - -# write & read QRcode -python-barcode -qrcode -opencv-python - -# ports -pyodbc -pyserial -# pywinusb to replace per puysb+libusb-package ? -pywinusb - -#rust packages -duckdb -polars - -# excel -xlsxwriter -openpyxl - -# connect to other langages -julia -pythonnet -clrmagic - -ptpython - -# async -trio -trio-asyncio - -# large lange models -llm -llm_gpt4all -llm_llama_cpp -llm_markov -huggingface_hub - -imbalanced-learn - - -fastapi - - -# needs recent wheel for altai5 -#great_expectations - -datasette_graphql -sqlite_utils -db.py -aiosqlite - - -# compression -zstandard - -#2023-08-22 fuzz replacements -rapidfuzz - -# dashboards -streamlit -dash - -#popular 2023-08-23 -greenlet -Markdown -docopt -PyOpenGL -Sphinx -sphinx_rtd_theme -rx -bottleneck -pystache -pypandoc -scikit-optimize -fuzzywuzzy -loky -astropy -snuggs -rasterio -flask-session -python-multipart -filterpy -requests_ntlm - -swifter -emcee -zarr -pyflux -snakeviz -nbdime -simplegeneric -ipydatagrid - -simpy -supersmoother -mpl_scatter_density -ppci -nltk -simplejson -sounddevice -pygame -moviepy -altair-transform -altair_data_server -pygad -xgboost -xlwings -cvxopt -mpmath -#azure -azure-identity -azure-cosmos -azure-core -sspyrs - -# sql - data -adodbapi - - -sqlparse - -mysql_connector_python -pg8000 - -pymongo -redis - -#hdf files -h5py -tables -netCDF4 -# not_popular python-hdf4 - -cytoolz - -blosc - -brewer2mpl - -PyAudio - -lmfit - -# less popular cartographic -mercantile -pyepsg - -#preparing parquet -python_snappy -brotli - -feather_format - -jupyter_sphinx - -streamz - -vega_datasets - - -gmpy2 - -mlxtend - -quantecon - -quart - -hypercorn - -umap-learn -flask-sqlalchemy - -nlopt - -httpie -flask-Mail - -lz4 - -jupyter_bokeh - -pydeck - -wasmer -wasmer_compiler_cranelift -wasmer_compiler_singlepass - -nbval - -## onnxruntime - -pynndescent - -quadprog - -orjson - -jupyter_packaging - -deap - -tbats - -missingno - -# for flask -waitress - - - - diff --git a/README.rst b/README.rst index e244bbb9..a727f9ca 100644 --- a/README.rst +++ b/README.rst @@ -1,75 +1,90 @@ WinPython tools =============== -Copyright @ 2012-2013 Pierre Raybaut +Copyright 2012-2013 Pierre Raybaut -Copyright @ 2014-2023+ The Winpython development team https://github.com/winpython/ +Copyright 2014-2025+ The Winpython development team: https://github.com/winpython/ Licensed under the terms of the MIT License -(see winpython/__init__.py for details) +(see wppm/__init__.py for details) Overview -------- WinPython is a portable distribution of the Python programming -language for Windows (https://winpython.github.io). +language for Windows: https://winpython.github.io -This is the `winpython` Python package, not the distribution itself. +This is the `wppm` Python package and build toolchain repository, not the distribution itself. It includes two main features: WinPython Package Manager (WPPM) - a graphical layer over pip, to let you install/uninstall - to your WinPython distribution any standard Python package built - as source (e.g. "dummypackage-2.1.zip" or "dummypackage-2.1.tar.gz") - or as wheel (e.g. "dummypackage-2.1-py3-none-any.whl") - -WinPython build toolchain - make.py is the script used to - build a WinPython distribution from (almost) scratch. + a complementary tool to navigate provided packages, install packages from included Wheelhouse, or register WinPython. + pip is the recommanded way to add or remove packages otherwise + +WinPython build toolchain (historic) + generate_a_winpython_distropy_meta.bat with a toml file is the toolchain used to build a WinPython distribution from (almost) scratch. + +WinPython build toolchain via Github action (news of 2025-08-24) + fork the project and run github action like `github_workflows_build-all_3.14.yml` for python-3.14 + you can modify the list of wheels with hash to your preference + + +WinPython set of Wheel + You can get also the equivalent of the WinPython distribution by using one of the provided pylock.toml + or by using provided requirements-with-hash.txt until pip does support pylock.toml files + Dependencies ------------ -* Python3 >= 3.4 (Python>= 3.7 is recommended) - -* PyQt5 >= 5.6 or PySide2>=5.11 (PyQt5 >=5.12 or Pyside2 >= 5.12 is recommended) +* Python3 >= 3.10 Requirements ------------ -* NSIS (for icon shortcut creations, installer can be NSIS, INNO, 7-Zip, or nothing) - -* PyQt5 or Pyside2 is required to execute WinPython Control Panel/Ipython Qt and Qt related packages. - if not installed, these packages will not execute. +* installer can be 7-Zip or nothing (just .zip-it) -Installation ------------- +* a basic github account allows you to build from your fork of this repository via github actions + + +Wppm build +---------- From the source package (see section 'Building dependencies'), you may -install WinPython using the integrated setup.py script based on Python -standard library `distutils` with the following command: +build WPPM using the following commands: + +.. code-block:: bash + + python -m pip install flit + python -m flit build + +wppm package is now build and published via github action `build_wppm_prod_publish.yml` + +Winpython Distribution wheels installation +------------------------------------------ + +To only install the wheels assembled per WinPython Distribution, you may + +.. code-block:: bash + + python -m pip install --no-deps --require-hashes https://github.com/winpython/winpython/releases/download/16.6.20250620final/requir.64-3_13_5_0slim.txt -**python setup.py install** +A pylock file is also available, when you package manager can handle it -Note that `distutils` does *not* uninstall previous versions of Python -packages: it simply copies files on top of an existing installation. -When using this command, it is thus highly recommended to uninstall -manually any previous version of WinPython by removing the associated -directory ('winpython' in your site-packages directory). +.. code-block:: text -From the Python package index, you may simply install WinPython *and* -upgrade an existing installation using `pip`: https://pypi.org + https://github.com/winpython/winpython/releases/download/16.6.20250620final/pylock.64-3_13_5_0slim.toml But the easiest way to install the last stable release of WinPython is -by using an executable installer: https://winpython.github.io/ +by using a zipped distribution with or without auto-extractor: https://winpython.github.io/ -More informations ------------------ +More information +---------------- -* Downloads: https://sourceforge.net/projects/winpython/files/ +* Downloads: https://sourceforge.net/projects/winpython/files/ or https://github.com/winpython/winpython/releases -* Development, bug reports and feature requests: https://github.com/winpython/winpython +* Development, bug reports, discussions and feature requests: https://github.com/winpython/winpython -* Discussions: https://groups.google.com/group/winpython +* Discussions: https://github.com/winpython/winpython/discussions diff --git a/build/dot_build.toml b/build/dot_build.toml new file mode 100644 index 00000000..1f1883fe --- /dev/null +++ b/build/dot_build.toml @@ -0,0 +1,14 @@ +[builds] +[[builds]] +name = "WinPython-dot-3.13" +root_dir_for_builds = "build_output" +python_target = "3.13" +flavor = "dot" +arch = "amd64" +source_dirs = "" +toolsdirs = "" +requirements = "" +create_installer = false + +[pythons] +"3.13" = { python_target_release = "3.13.0", release = "b1", my_release_level = "b0", mandatory_requirements = "" } \ No newline at end of file diff --git a/build_winpython_meta.py b/build_winpython_meta.py new file mode 100644 index 00000000..586c417a --- /dev/null +++ b/build_winpython_meta.py @@ -0,0 +1,98 @@ +# build_winpython_meta.py +import os +import sys +# Use tomllib if available (Python 3.11+), otherwise fall back to tomli +try: + import tomllib # Python 3.11+ +except ImportError: + try: + import tomli as tomllib # For older Python versions + except ImportError: + print("Please install tomli for Python < 3.11: pip install tomli") + sys.exit(1) + +#import yaml: we choose toml, more python standard +import subprocess +from pathlib import Path + +def load_builds(config_file): + with open(config_file, "rb") as f: + config = tomllib.load(f) + builds = config["builds"] + python_versions = config.get("pythons", {}) + return builds, python_versions + +def run_build(build, python_versions): + print(f"\n=== Building WinPython: {build['name']} ===") + print(build) + + root_dir_for_builds = build["root_dir_for_builds"] + my_python_target = build["python_target"] + my_flavor = build["flavor"] + my_arch = str(build["arch"]) + my_create_installer = build.get("create_installer", "True") + my_requirements = build.get("requirements", "") + my_source_dirs = build.get("source_dirs", "") + my_find_links = build.get("find_links", "") + my_toolsdirs = build.get("toolsdirs", "") + #my_install_options = build.get("install_options", "") + wheelhousereq = build.get("wheelhousereq", "") + + # Get Python release info from TOML [pythons] + py_target = my_python_target + vinfo = python_versions.get(py_target, {}) + my_python_target_release = vinfo.get("python_target_release", "") + my_release = vinfo.get("release", "") + my_release_level = vinfo.get("my_release_level", "b0") + mandatory_requirements = vinfo.get("mandatory_requirements", os.path.join(os.getcwd(), "mandatory_requirements.txt")) + my_constraints = build.get("my_constraints", r"C:\WinP\constraints.txt") + + # Build directory logic + my_basedir = f"{root_dir_for_builds}\\bd{my_python_target}" + my_WINPYDIRBASE = f"{my_basedir}\\bu{my_flavor}\\WPy{my_arch}-{my_python_target_release}{my_release}{my_release_level}" + + # Build env paths (customize as needed) already defined per the launcher of that script... + + my_python_exe = Path(sys.executable) + my_buildenvi = str(my_python_exe.parent) + + my_archive_dir = os.path.join(os.getcwd(), "WinPython_build_logs") + os.makedirs(my_archive_dir, exist_ok=True) + + my_requirements_pre = build.get("my_requirements_pre", mandatory_requirements) + + # Build command + build_cmd = [ + str(my_python_exe), + "-m", "winpython.build_winpython", + "--buildenv", my_buildenvi, + "--python-target", my_python_target, + "--release", my_release, + "--release-level", my_release_level, + "--winpydirbase", my_WINPYDIRBASE, + "--flavor", my_flavor, + "--source_dirs", my_source_dirs, + "--tools_dirs", my_toolsdirs, + "--log-dir", my_archive_dir, + "--mandatory-req", mandatory_requirements, + "--pre-req", my_requirements_pre, + "--requirements", my_requirements, + "--constraints", my_constraints, + "--find-links", my_find_links, + "--wheelhousereq", wheelhousereq, + "--create-installer", my_create_installer, + #"--install-options", env["my_install_options"], + ] + + print("Running build command:") + print(" ".join(build_cmd)) + subprocess.run(build_cmd, cwd=os.getcwd(), check=False) + +def main(): + config_file = sys.argv[1] if len(sys.argv) > 1 else "winpython_buildsNOT.toml" + builds, python_versions = load_builds(config_file) + for build in builds: + run_build(build, python_versions) + +if __name__ == "__main__": + main() diff --git a/changelogs/WinPython-64bit-3.12.4.1.md b/changelogs/WinPython-64bit-3.12.4.1.md new file mode 100644 index 00000000..7f176f91 --- /dev/null +++ b/changelogs/WinPython-64bit-3.12.4.1.md @@ -0,0 +1,580 @@ +## WinPython 3.12.4.1 + +The following packages are included in WinPython-64bit v3.12.4.1 . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Nodejs](https://nodejs.org) | v20.12.2 | a JavaScript runtime built on Chrome's V8 JavaScript engine +[npmjs](https://www.npmjs.com/) | 10.5.0 | a package manager for JavaScript +[Pandoc](https://pandoc.org/) | 3.1.9 | a universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.4 | Python programming language with standard library +[about_time](https://pypi.org/project/about_time) | 4.2.1 | Easily measure timing and throughput of code blocks, with beautiful human friendly representations. +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[accelerate](https://pypi.org/project/accelerate) | 0.28.0 | Accelerate +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 0.11.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[affine](https://pypi.org/project/affine) | 2.3.1 | Matrices describing affine transformation of the plane. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohttp](https://pypi.org/project/aiohttp) | 3.9.5 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[alive_progress](https://pypi.org/project/alive_progress) | 3.1.5 | A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations! +[altair](https://pypi.org/project/altair) | 5.3.0 | Vega-Altair: A declarative statistical visualization library for Python. +[altair_data_server](https://pypi.org/project/altair_data_server) | 0.4.1 | A background data server for Altair charts. +[altair_transform](https://pypi.org/project/altair_transform) | 0.2.0 | A python engine for evaluating Altair transforms. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anyio](https://pypi.org/project/anyio) | 4.4.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.7.1 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.2.2 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.0 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.4.29.0.28.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[async_timeout](https://pypi.org/project/async_timeout) | 4.0.3 | Timeout context manager for asyncio programs +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autograd](https://pypi.org/project/autograd) | 1.6.2 | Efficiently computes derivatives of numpy code. +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.1 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.6.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.15.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.4.2 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.4.1 | Interactive plots and applications in the browser from Python +[botorch](https://pypi.org/project/botorch) | 0.9.5 | Bayesian Optimization in PyTorch +[branca](https://pypi.org/project/branca) | 0.7.2 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.3.3 | Extensible memoizing collections and decorators +[cartopy](https://pypi.org/project/cartopy) | 0.23.0 | A Python library for cartographic visualizations with Matplotlib +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.16.0 | Foreign Function Interface for Python calling C code. +[cftime](https://pypi.org/project/cftime) | 1.6.3 | Time-handling functionality from netcdf4-python +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.3.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[click_plugins](https://pypi.org/project/click_plugins) | 1.1.1 | An extension module for click to enable registering CLI commands via setuptools entry-points. +[cligj](https://pypi.org/project/cligj) | 0.7.2 | Click params for commmand line interfaces to GeoJSON +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[clr_loader](https://pypi.org/project/clr_loader) | 0.2.6 | Generic pure Python loader for .NET runtimes +[clrmagic](https://pypi.org/project/clrmagic) | 0.0.1a2 | IPython cell magic to use .NET languages +[cma](https://pypi.org/project/cma) | 3.2.2 | CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.2.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. creating a Python package project from a Python package project template. +[coverage](https://pypi.org/project/coverage) | 7.5.3 | Code coverage measurement for Python +[cryptography](https://pypi.org/project/cryptography) | 41.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.5.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.10 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 0.12.3 | Cython implementation of Toolz: High performance functional utilities +[dash](https://pypi.org/project/dash) | 2.17.0 | A Python framework for building reactive web-apps. Developed by Plotly. +[dash_core_components](https://pypi.org/project/dash_core_components) | 2.0.0 | Core component suite for Dash +[dash_html_components](https://pypi.org/project/dash_html_components) | 2.0.0 | Vanilla HTML components for Dash +[dash_table](https://pypi.org/project/dash_table) | 5.0.0 | Dash table +[dask](https://pypi.org/project/dask) | 2024.5.2 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.2 | High Level Expressions for Dask +[dask_image](https://pypi.org/project/dask_image) | 2024.5.3 | Distributed image processing +[datasette](https://pypi.org/project/datasette) | 0.64.6 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.2 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[deap](https://pypi.org/project/deap) | 1.4.1 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 4.4.2 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.13 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20200713 | Repackaging of Google's Diff Match and Patch libraries. Offers robust algorithms to perform the operations required for synchronizing plain text. +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[dirty_cat](https://pypi.org/project/dirty_cat) | 0.4.1 | Machine learning with dirty categories. +[distlib](https://pypi.org/project/distlib) | 0.3.8 | Distribution utilities +[distributed](https://pypi.org/project/distributed) | 2024.5.2 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.6 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.0.0 | DuckDB in-process database +[ecos](https://pypi.org/project/ecos) | 2.0.13 | This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information. +[email_validator](https://pypi.org/project/email_validator) | 2.1.1 | A robust email address syntax and deliverability validation library. +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.111.0 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastapi_cli](https://pypi.org/project/fastapi_cli) | 0.0.4 | Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀 +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[fiona](https://pypi.org/project/fiona) | 1.9.5 | Fiona reads and writes spatial data files +[flake8](https://pypi.org/project/flake8) | 7.0.0 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.16.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.51.0 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.4.1 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.3.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[gdal](https://pypi.org/project/gdal) | 3.7.3 | GDAL: Geospatial Data Abstraction Library +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 0.14.4 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[gpytorch](https://pypi.org/project/gpytorch) | 1.11 | An implementation of Gaussian Processes in Pytorch +[grapheme](https://pypi.org/project/grapheme) | 0.6.0 | Unicode grapheme helpers +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.0.3 | Lightweight in-process concurrent programming +[guidata](https://pypi.org/project/guidata) | 3.5.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.10.0 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.24.2 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.19.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.2 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httptools](https://pypi.org/project/httptools) | 0.6.1 | A collection of framework independent HTTP protocol utils. +[httpx](https://pypi.org/project/httpx) | 0.27.0 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.23.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.10.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.100.5 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imageio_ffmpeg](https://pypi.org/project/imageio_ffmpeg) | 0.4.8 | FFMPEG wrapper for Python +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.12.3 | Toolbox for imbalanced dataset in machine learning. +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.4 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.1 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.25.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.2 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 1.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 5.3.0 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.0.1 | Functools like those found in stdlib +[jaxtyping](https://pypi.org/project/jaxtyping) | 0.2.22 | Type annotations and runtime checking for shape and dtype of JAX arrays, and PyTrees. +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.0.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.0.0 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.1 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.1 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.2.2 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.2 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.11 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.3.3 | Multi-backend Keras. +[keyring](https://pypi.org/project/keyring) | 25.2.1 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.5 | A fast implementation of the Cassowary constraint solver +[kornia](https://pypi.org/project/kornia) | 0.7.2 | Open Source Differentiable Computer Vision Library for PyTorch +[kornia_rs](https://pypi.org/project/kornia_rs) | 0.1.3 | Low level implementations for computer vision in Rust +[langchain](https://pypi.org/project/langchain) | 0.2.5 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.2.7 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.2.1 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.1.77 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[lightning](https://pypi.org/project/lightning) | 2.2.1 | The Deep Learning framework to train, deploy, and ship AI products Lightning fast. +[lightning_utilities](https://pypi.org/project/lightning_utilities) | 0.10.0 | PyTorch Lightning Sample project. +[linear_operator](https://pypi.org/project/linear_operator) | 0.5.1 | A linear operator implementation, primarily designed for finite-dimensional positive definite operators (i.e. kernel matrices). +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.43.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[lxml](https://pypi.org/project/lxml) | 5.2.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.2.0 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.9.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.5.1 | Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.4.0 | stand-alone implementation of several NumPy dtype extensions used in machine learning libraries +[mlxtend](https://pypi.org/project/mlxtend) | 0.22.0 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[moviepy](https://pypi.org/project/moviepy) | 1.0.3 | Video editing with Python +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.24.1 | The Microsoft Authentication Library (MSAL) for Python library +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.0.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS and Linux. Concurrent data access will be coordinated by a file lock mechanism. +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[multidict](https://pypi.org/project/multidict) | 6.0.5 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.10.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | 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 ...`). +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[netcdf4](https://pypi.org/project/netcdf4) | 1.6.5 | Provides an object-oriented python interface to the netCDF version 4 library +[networkx](https://pypi.org/project/networkx) | 3.3 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.8.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.2.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[ntlm_auth](https://pypi.org/project/ntlm_auth) | 1.5.0 | Creates NTLM authentication structures +[numba](https://pypi.org/project/numba) | 0.60.0 | compiling Python code using LLVM +[numexpr](https://pypi.org/project/numexpr) | 2.10.0 | Fast numerical expression evaluator for NumPy +[numpy](https://pypi.org/project/numpy) | 1.26.4 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.33.0 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.82 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opt_einsum](https://pypi.org/project/opt_einsum) | 3.3.0 | Optimizing numpys einsum function +[optree](https://pypi.org/project/optree) | 0.11.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.9.15 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ortools](https://pypi.org/project/ortools) | 9.8.3296 | Google OR-Tools python libraries and modules +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.2 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.4.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.0 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 10.3.0 | Python Imaging Library (Fork) +[pims](https://pypi.org/project/pims) | 0.6.1 | Python Image Sequence +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.0 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.9.6 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.22.0 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.3.0 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[pmdarima](https://pypi.org/project/pmdarima) | 2.0.4 | Python's forecast::auto.arima equivalent +[polars](https://pypi.org/project/polars) | 0.20.31 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[portpicker](https://pypi.org/project/portpicker) | 1.5.0 | A library to choose unique available network ports. +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[proglog](https://pypi.org/project/proglog) | 0.1.10 | Log and progress bar manager for console, notebooks, web... +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.43 | Library for building powerful interactive command lines in Python +[protobuf](https://pypi.org/project/protobuf) | 4.25.1 | Protocol Buffers +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.26 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pulp](https://pypi.org/project/pulp) | 2.6.0 | PuLP is an LP modeler written in python. PuLP can generate MPS or LP files and call GLPK, COIN CLP/CBC, CPLEX, and GUROBI to solve linear problems. +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 16.1.0 | Python library for Apache Arrow +[pyaudio](https://pypi.org/project/pyaudio) | 0.2.14 | Cross-platform audio I/O with PortAudio +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.12.0 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.11.1 | Python style guide checker +[pycosat](https://pypi.org/project/pycosat) | 0.6.6 | bindings to picosat (a SAT solver) +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.7.1 | Data validation using Python type hints +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.18.2 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyepsg](https://pypi.org/project/pyepsg) | 0.4.0 | Easy access to the EPSG database via http://epsg.io/ +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygame](https://pypi.org/project/pygame) | 2.5.2 | Python Game Development +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.7.2 | Python driver for MongoDB +[pymoo](https://pypi.org/project/pymoo) | 0.6.1.1 | Multi-Objective Optimization in Python +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.1.0 | DB API module for ODBC +[pyomo](https://pypi.org/project/pyomo) | 6.7.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.1.2 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pypng](https://pypi.org/project/pypng) | 0.20220715.0 | Pure Python library for saving and loading PNG images +[pyproj](https://pypi.org/project/pyproj) | 3.6.1 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.13.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyro_api](https://pypi.org/project/pyro_api) | 0.1.2 | Generic API for dispatch to Pyro backends. +[pyro_ppl](https://pypi.org/project/pyro_ppl) | 1.9.0 | A Python library for probabilistic modeling and inference +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pyshp](https://pypi.org/project/pyshp) | 2.3.1 | Pure Python read/write support for ESRI Shapefile format +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans. Launched in 2018. It's 2022 & PySimpleGUI is an ACTIVE & supported project. Super-simple to create custom GUI's. 325+ Demo programs & Cookbook for rapid start. Extensive documentation. Main docs at www.PySimpleGUI.org. Fun & your success are the focus. Examples using Machine Learning (GUI, OpenCV Integration), Rainmeter Style Desktop Widgets, Matplotlib + Pyplot, PIL support, add GUI to command line scripts, PDF & Image Viewers. Great for beginners & advanced GUI programmers. +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pytest](https://pypi.org/project/pytest) | 8.2.0 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.11.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 6.1.2 | A Python slugify application that also handles Unicode +[pythonnet](https://pypi.org/project/pythonnet) | 3.0.3 | .NET and Mono integration for Python +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.12.1 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytorch_lightning](https://pypi.org/project/pytorch_lightning) | 2.2.1 | PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate. +[pytz](https://pypi.org/project/pytz) | 2023.3 | World timezone definitions, modern and historical +[pytz_deprecation_shim](https://pypi.org/project/pytz_deprecation_shim) | 0.1.0.post0 | Shims to make deprecation of pytz easier +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.2 | A JupyterLab extension for rendering HoloViz content. +[pywin32](https://pypi.org/project/pywin32) | 306 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.12 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.1 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.0.3 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qpsolvers](https://pypi.org/project/qpsolvers) | 4.3.0 | Quadratic programming solvers in Python with a unified API. +[qrcode](https://pypi.org/project/qrcode) | 7.4.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.5.3 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.5.2 | rapid fuzzy string matching +[rasterio](https://pypi.org/project/rasterio) | 1.3.10 | Fast and direct raster I/O for use with Numpy and SciPy +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 4.3.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.31.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2023.10.3 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.0 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.31.0 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.1.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[retrying](https://pypi.org/project/retrying) | 1.3.4 | Retrying +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.7.1 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.13.2 | Python bindings to Rust's persistent data structures (rpds) +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[safetensors](https://pypi.org/project/safetensors) | 0.4.2 | Fast and Safe Tensor serialization +[scikit_image](https://pypi.org/project/scikit_image) | 0.23.2 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.5.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.13.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.4.post1 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 69.5.1 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.4 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.0.post1 | Tool to Detect Surrounding Shell +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[slicerator](https://pypi.org/project/slicerator) | 1.1.0 | A lazy-loading, fancy-sliceable iterable. +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[snuggs](https://pypi.org/project/snuggs) | 1.4.7 | Snuggs are s-expressions for Numpy +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.2.6 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.2 | sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.2 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document. +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.3 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document. +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.5 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.28 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.36 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.4.3 | A non-validating SQL parser. +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.37.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.2 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.35.0 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[swifter](https://pypi.org/project/swifter) | 1.3.4 | A package which efficiently applies any function to a pandas dataframe or series in the fastest available manner +[sympy](https://pypi.org/project/sympy) | 1.12.1 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tbats](https://pypi.org/project/tbats) | 1.1.0 | BATS and TBATS for time series forecasting +[tblib](https://pypi.org/project/tblib) | 1.7.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.1.0 | Retry code until it succeeds +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.5.0 | Compute distance between the two texts. +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2023.7.18 | Read and write TIFF files +[tinycss2](https://pypi.org/project/tinycss2) | 1.1.1 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.15.1 | Fast and Customizable Tokenizers +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 0.12.0 | List processing tools and functional utilities +[torch](https://pypi.org/project/torch) | 2.2.2 | Tensors and Dynamic neural networks in Python with strong GPU acceleration +[torchaudio](https://pypi.org/project/torchaudio) | 2.2.2 | An audio package for PyTorch +[torchmetrics](https://pypi.org/project/torchmetrics) | 1.3.2 | PyTorch native Metrics +[torchvision](https://pypi.org/project/torchvision) | 0.17.2 | image and video datasets and models for torch deep learning +[tornado](https://pypi.org/project/tornado) | 6.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[transformers](https://pypi.org/project/transformers) | 4.38.2 | State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow +[trio](https://pypi.org/project/trio) | 0.25.1 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2023.2.20 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 4.0.1 | Collection of utilities for publishing packages on PyPI +[typeguard](https://pypi.org/project/typeguard) | 2.13.3 | Run-time type checker for Python +[typer](https://pypi.org/project/typer) | 0.12.3 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.9.0 | Backported and Experimental Type Hints for Python 3.8+ +[tzdata](https://pypi.org/project/tzdata) | 2022.7 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 4.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.8.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.1 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.2.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.29.0 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[virtualenv](https://pypi.org/project/virtualenv) | 20.26.2 | Virtual Python Environment builder +[waitress](https://pypi.org/project/waitress) | 2.1.2 | Waitress WSGI server +[wasmer](https://pypi.org/project/wasmer) | 1.1.0 | Python extension to run WebAssembly binaries +[wasmer_compiler_cranelift](https://pypi.org/project/wasmer_compiler_cranelift) | 1.1.0 | Python extension to run WebAssembly binaries +[wasmer_compiler_singlepass](https://pypi.org/project/wasmer_compiler_singlepass) | 1.1.0 | Python extension to run WebAssembly binaries +[watchdog](https://pypi.org/project/watchdog) | 2.2.0 | Filesystem events monitoring +[watchfiles](https://pypi.org/project/watchfiles) | 0.21.0 | Simple, modern and high performance file watching and code reload in python. +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 1.12 | A library for working with color names and color values formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 12.0 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.0.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.2 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.43.0 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.10 | Jupyter interactive widgets for Jupyter Notebook +[winpython](http://winpython.github.io/) | 8.2.20240618 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.3 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.14.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2024.6.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xlwings](https://pypi.org/project/xlwings) | 0.24.7 | Make Excel fly: Interact with Excel from Python and vice versa. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.7.2 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.17.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.22.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPython-64bit-3.12.4.1_History.md b/changelogs/WinPython-64bit-3.12.4.1_History.md new file mode 100644 index 00000000..f8710b75 --- /dev/null +++ b/changelogs/WinPython-64bit-3.12.4.1_History.md @@ -0,0 +1,246 @@ +## History of changes for WinPython-64bit 3.12.4.1 + +The following changes were made to WinPython-64bit distribution since version 3.12.3.0. + +
+### Python packages + +New packages: + + * [adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) 0.11.0 (A generic entrypoint for ADBC drivers.) + * [ansicolors](https://pypi.org/project/ansicolors) 1.1.8 (ANSI colors for Python) + * [astropy_iers_data](https://pypi.org/project/astropy_iers_data) 0.2024.4.29.0.28.48 (IERS Earth Rotation and Leap Second tables for the astropy core package) + * [cartopy](https://pypi.org/project/cartopy) 0.23.0 (A Python library for cartographic visualizations with Matplotlib) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.2 (High Level Expressions for Dask ) + * [email_validator](https://pypi.org/project/email_validator) 2.1.1 (A robust email address syntax and deliverability validation library.) + * [fastapi_cli](https://pypi.org/project/fastapi_cli) 0.0.4 (Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀) + * [httptools](https://pypi.org/project/httptools) 0.6.1 (A collection of framework independent HTTP protocol utils.) + * [jaraco_context](https://pypi.org/project/jaraco_context) 5.3.0 (Useful decorators and context managers) + * [jaraco_functools](https://pypi.org/project/jaraco_functools) 4.0.1 (Functools like those found in stdlib) + * [jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) 0.19.1 (ipyleaflet extensions for JupyterLab and Jupyter Notebook) + * [kornia_rs](https://pypi.org/project/kornia_rs) 0.1.3 (Low level implementations for computer vision in Rust) + * [pyshp](https://pypi.org/project/pyshp) 2.3.1 (Pure Python read/write support for ESRI Shapefile format) + * [typer](https://pypi.org/project/typer) 0.12.3 (Typer, build great CLIs. Easy to code. Based on Python type hints.) + * [watchfiles](https://pypi.org/project/watchfiles) 0.21.0 (Simple, modern and high performance file watching and code reload in python.) + +Upgraded packages: + + * [accelerate](https://pypi.org/project/accelerate) 0.23.0 → 0.28.0 (Accelerate) + * [aiohttp](https://pypi.org/project/aiohttp) 3.9.3 → 3.9.5 (Async http client/server framework (asyncio)) + * [alabaster](https://pypi.org/project/alabaster) 0.7.13 → 0.7.16 (A light, configurable Sphinx theme) + * [alembic](https://pypi.org/project/alembic) 1.12.1 → 1.13.1 (A database migration tool for SQLAlchemy.) + * [altair](https://pypi.org/project/altair) 5.2.0 → 5.3.0 (Vega-Altair: A declarative statistical visualization library for Python.) + * [anyio](https://pypi.org/project/anyio) 4.3.0 → 4.4.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * [anywidget](https://pypi.org/project/anywidget) 0.7.1 → 0.9.12 (custom jupyter widgets made easy) + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.4.1 → 1.7.1 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [asgiref](https://pypi.org/project/asgiref) 3.7.2 → 3.8.1 (ASGI specs, helper code, and adapters) + * [astropy](https://pypi.org/project/astropy) 5.3.4 → 6.1.0 (Astronomy and astrophysics core library) + * [azure_core](https://pypi.org/project/azure_core) 1.29.5 → 1.30.1 (Microsoft Azure Core Library for Python) + * [azure_cosmos](https://pypi.org/project/azure_cosmos) 4.5.1 → 4.6.0 (Microsoft Azure Cosmos Client Library for Python) + * [azure_identity](https://pypi.org/project/azure_identity) 1.15.0 → 1.16.0 (Microsoft Azure Identity Library for Python) + * [babel](https://pypi.org/project/babel) 2.13.1 → 2.15.0 (Internationalization utilities) + * [black](https://pypi.org/project/black) 24.2.0 → 24.4.2 (The uncompromising code formatter.) + * [bleach](https://pypi.org/project/bleach) 6.0.0 → 6.1.0 (An easy safelist-based HTML-sanitizing tool.) + * [bokeh](https://pypi.org/project/bokeh) 3.4.0 → 3.4.1 (Interactive plots and applications in the browser from Python) + * [branca](https://pypi.org/project/branca) 0.6.0 → 0.7.2 (Generate complex HTML+JS pages with Python) + * [build](https://pypi.org/project/build) 1.1.1 → 1.2.1 (A simple, correct Python build frontend) + * [cachelib](https://pypi.org/project/cachelib) 0.10.2 → 0.13.0 (A collection of cache libraries in the same API interface.) + * [cachetools](https://pypi.org/project/cachetools) 5.3.1 → 5.3.3 (Extensible memoizing collections and decorators) + * [certifi](https://pypi.org/project/certifi) 2023.11.17 → 2024.6.2 (Python package for providing Mozilla's CA Bundle.) + * [charset_normalizer](https://pypi.org/project/charset_normalizer) 3.2.0 → 3.3.2 (The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet.) + * [clarabel](https://pypi.org/project/clarabel) 0.7.1 → 0.9.0 (Clarabel Conic Interior Point Solver for Rust / Python) + * [colorcet](https://pypi.org/project/colorcet) 3.0.1 → 3.1.0 (Collection of perceptually uniform colormaps) + * [comm](https://pypi.org/project/comm) 0.1.4 → 0.2.2 (Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc.) + * [contourpy](https://pypi.org/project/contourpy) 1.2.0 → 1.2.1 (Python library for calculating contours of 2D quadrilateral grids) + * [cookiecutter](https://pypi.org/project/cookiecutter) 2.3.0 → 2.6.0 (A command-line utility that creates projects from project templates, e.g. creating a Python package project from a Python package project template.) + * [coverage](https://pypi.org/project/coverage) 7.3.2 → 7.5.3 (Code coverage measurement for Python) + * [dash](https://pypi.org/project/dash) 2.14.1 → 2.17.0 (A Python framework for building reactive web-apps. Developed by Plotly.) + * [dask](https://pypi.org/project/dask) 2023.10.1 → 2024.5.2 (Parallel PyData with Task Scheduling) + * [dask_image](https://pypi.org/project/dask_image) 2023.8.1 → 2024.5.3 (Distributed image processing) + * [datasette](https://pypi.org/project/datasette) 0.64.5 → 0.64.6 (An open source multi-tool for exploring and publishing data) + * [datashader](https://pypi.org/project/datashader) 0.16.0 → 0.16.2 (Data visualization toolchain based on aggregating into a grid) + * [distlib](https://pypi.org/project/distlib) 0.3.6 → 0.3.8 (Distribution utilities) + * [distributed](https://pypi.org/project/distributed) 2023.10.1 → 2024.5.2 (Distributed scheduler for Dask) + * [django](https://pypi.org/project/django) 4.2.5 → 5.0.6 (A high-level Python web framework that encourages rapid development and clean, pragmatic design.) + * [dnspython](https://pypi.org/project/dnspython) 2.4.2 → 2.6.1 (DNS toolkit) + * [duckdb](https://pypi.org/project/duckdb) 0.10.1 → 1.0.0 (DuckDB in-process database) + * [fast_histogram](https://pypi.org/project/fast_histogram) 0.12 → 0.14 (Fast simple 1D and 2D histograms) + * [fastapi](https://pypi.org/project/fastapi) 0.109.1 → 0.111.0 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [filelock](https://pypi.org/project/filelock) 3.12.4 → 3.14.0 (A platform independent file lock.) + * [flask](https://pypi.org/project/flask) 3.0.2 → 3.0.3 (A simple framework for building complex web applications.) + * [folium](https://pypi.org/project/folium) 0.14.0 → 0.16.0 (Make beautiful maps with Leaflet.js & Python) + * [fonttools](https://pypi.org/project/fonttools) 4.44.0 → 4.51.0 (Tools to manipulate font files) + * [fsspec](https://pypi.org/project/fsspec) 2023.9.2 → 2024.3.1 (File-system specification) + * [geopandas](https://pypi.org/project/geopandas) 0.14.0 → 0.14.4 (Geographic pandas extensions) + * [geopy](https://pypi.org/project/geopy) 2.4.0 → 2.4.1 (Python Geocoding Toolbox) + * [guidata](https://pypi.org/project/guidata) 3.4.1 → 3.5.0 (Automatic GUI generation for easy dataset editing and display) + * [hatchling](https://pypi.org/project/hatchling) 1.21.1 → 1.24.2 (Modern, extensible Python build backend) + * [holoviews](https://pypi.org/project/holoviews) 1.18.3 → 1.19.0 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.21.4 → 0.23.0 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hvplot](https://pypi.org/project/hvplot) 0.9.2 → 0.10.0 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [hypercorn](https://pypi.org/project/hypercorn) 0.14.4 → 0.16.0 (A ASGI Server based on Hyper libraries and inspired by Gunicorn) + * [hypothesis](https://pypi.org/project/hypothesis) 6.87.1 → 6.100.5 (A library for property-based testing) + * [idna](https://pypi.org/project/idna) 3.4 → 3.7 (Internationalized Domain Names in Applications (IDNA)) + * [imageio](https://pypi.org/project/imageio) 2.31.1 → 2.33.1 (Library for reading and writing a wide range of image, video, scientific, and volumetric data formats.) + * [imbalanced_learn](https://pypi.org/project/imbalanced_learn) 0.12.2 → 0.12.3 (Toolbox for imbalanced dataset in machine learning.) + * [importlib_metadata](https://pypi.org/project/importlib_metadata) 6.8.0 → 7.1.0 (Read metadata from Python packages) + * [ipycanvas](https://pypi.org/project/ipycanvas) 0.13.1 → 0.13.2 (Interactive widgets library exposing the browser's Canvas API) + * [ipyleaflet](https://pypi.org/project/ipyleaflet) 0.18.2 → 0.19.1 (A Jupyter widget for dynamic Leaflet maps) + * [ipympl](https://pypi.org/project/ipympl) 0.9.3 → 0.9.4 (Matplotlib Jupyter Extension) + * [ipython](https://pypi.org/project/ipython) 8.22.2 → 8.25.0 (IPython: Productive Interactive Computing) + * [isort](https://pypi.org/project/isort) 5.12.0 → 5.13.2 (A Python utility / library to sort Python imports.) + * [itsdangerous](https://pypi.org/project/itsdangerous) 2.1.2 → 2.2.0 (Safely pass data to untrusted environments and back.) + * [jaraco_classes](https://pypi.org/project/jaraco_classes) 3.3.0 → 3.4.0 (Utility functions for Python class constructs) + * [joblib](https://pypi.org/project/joblib) 1.3.2 → 1.4.2 (Lightweight pipelining with Python functions) + * [jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) 2023.7.1 → 2023.12.1 (The JSON Schema meta-schemas and vocabularies, exposed as a Registry) + * [jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) 3.0.7 → 4.0.5 (A Jupyter extension for rendering Bokeh content.) + * [jupyter_client](https://pypi.org/project/jupyter_client) 8.6.0 → 8.6.2 (Jupyter protocol implementation and client libraries) + * [jupyter_core](https://pypi.org/project/jupyter_core) 5.5.0 → 5.7.2 (Jupyter core package. A base package on which Jupyter projects rely.) + * [jupyter_events](https://pypi.org/project/jupyter_events) 0.9.0 → 0.10.0 (Jupyter Event System library) + * [jupyter_lsp](https://pypi.org/project/jupyter_lsp) 2.2.0 → 2.2.5 (Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server) + * [jupyter_server](https://pypi.org/project/jupyter_server) 2.12.5 → 2.14.1 (The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications.) + * [jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) 0.4.4 → 0.5.3 (A Jupyter Server Extension Providing Terminals.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.1.5 → 4.2.2 (JupyterLab computational environment) + * [jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) 0.2.2 → 0.3.0 (Pygments theme using JupyterLab CSS variables) + * [jupyterlab_server](https://pypi.org/project/jupyterlab_server) 2.25.4 → 2.27.2 (A set of server components for JupyterLab and JupyterLab like applications.) + * [jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) 3.0.10 → 3.0.11 (Jupyter interactive widgets for JupyterLab) + * [keras](https://pypi.org/project/keras) 3.1.1 → 3.3.3 (Multi-backend Keras.) + * [keyring](https://pypi.org/project/keyring) 24.2.0 → 25.2.1 (Store and access your passwords safely.) + * [kornia](https://pypi.org/project/kornia) 0.7.1 → 0.7.2 (Open Source Differentiable Computer Vision Library for PyTorch) + * [langchain](https://pypi.org/project/langchain) 0.1.13 → 0.2.5 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.1.35 → 0.2.7 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.0.1 → 0.2.1 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.1.33 → 0.1.77 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [lazy_loader](https://pypi.org/project/lazy_loader) 0.3 → 0.4 (Makes it easy to load subpackages and functions on demand.) + * [llvmlite](https://pypi.org/project/llvmlite) 0.42.0 → 0.43.0 (lightweight wrapper around basic LLVM functionality) + * [lmfit](https://pypi.org/project/lmfit) 1.0.3 → 1.3.1 (Least-Squares Minimization with Bounds and Constraints) + * [lxml](https://pypi.org/project/lxml) 5.1.0 → 5.2.2 (Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.8.3 → 3.9.0 (Python plotting package) + * [matplotlib_inline](https://pypi.org/project/matplotlib_inline) 0.1.6 → 0.1.7 (Inline Matplotlib backend for Jupyter) + * [mizani](https://pypi.org/project/mizani) 0.9.2 → 0.11.4 (Scales for Python) + * [ml_dtypes](https://pypi.org/project/ml_dtypes) 0.3.2 → 0.4.0 (stand-alone implementation of several NumPy dtype extensions used in machine learning libraries) + * [more_itertools](https://pypi.org/project/more_itertools) 9.0.0 → 10.2.0 (More routines for operating on iterables, beyond itertools) + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.38.33135 → 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + * [mutagen](https://pypi.org/project/mutagen) 1.46.0 → 1.47.0 (read and write audio tags for many formats) + * [mypy](https://pypi.org/project/mypy) 1.9.0 → 1.10.0 (Optional static typing for Python) + * [namex](https://pypi.org/project/namex) 0.0.7 → 0.0.8 (A simple utility to separate the implementation of your Python package and its public API surface.) + * [nbformat](https://pypi.org/project/nbformat) 5.10.3 → 5.10.4 (The Jupyter Notebook format) + * [nest_asyncio](https://pypi.org/project/nest_asyncio) 1.5.6 → 1.6.0 (Patch asyncio to allow nested event loops) + * [networkx](https://pypi.org/project/networkx) 3.2.1 → 3.3 (Python package for creating and manipulating graphs and networks) + * [notebook](https://pypi.org/project/notebook) 7.1.2 → 7.2.1 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * [notebook_shim](https://pypi.org/project/notebook_shim) 0.2.3 → 0.2.4 (A shim layer for notebook traits and config) + * [numba](https://pypi.org/project/numba) 0.59.1 → 0.60.0 (compiling Python code using LLVM) + * [numexpr](https://pypi.org/project/numexpr) 2.8.7 → 2.10.0 (Fast numerical expression evaluator for NumPy) + * [numpydoc](https://pypi.org/project/numpydoc) 1.3 → 1.6.0 (Sphinx extension to support docstrings in Numpy format) + * [openai](https://pypi.org/project/openai) 1.14.3 → 1.33.0 (The official Python library for the openai API) + * [opencv_python](https://pypi.org/project/opencv_python) 4.9.0.80 → 4.10.0.82 (Wrapper package for OpenCV python bindings.) + * [packaging](https://pypi.org/project/packaging) 23.2 → 24.1 (Core utilities for Python packages) + * [pandas](https://pypi.org/project/pandas) 2.2.1 → 2.2.2 (Powerful data structures for data analysis, time series, and statistics) + * [panel](https://pypi.org/project/panel) 1.4.1 → 1.4.4 (The powerful data exploration & web app framework for Python.) + * [papermill](https://pypi.org/project/papermill) 2.5.1a1 → 2.6.0 (Parameterize and run Jupyter and nteract Notebooks) + * [parso](https://pypi.org/project/parso) 0.8.3 → 0.8.4 (A Python Parser) + * [pillow](https://pypi.org/project/pillow) 10.2.0 → 10.3.0 (Python Imaging Library (Fork)) + * [pint](https://pypi.org/project/pint) 0.19.2 → 0.23 (Physical quantities module) + * [platformdirs](https://pypi.org/project/platformdirs) 3.8.1 → 4.2.2 (A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.) + * [plotly](https://pypi.org/project/plotly) 5.20.0 → 5.22.0 (An open-source, interactive data visualization library for Python) + * [plotnine](https://pypi.org/project/plotnine) 0.12.4 → 0.13.6 (A Grammar of Graphics for Python) + * [pluggy](https://pypi.org/project/pluggy) 1.0.0 → 1.5.0 (plugin and hook calling mechanisms for python) + * [polars](https://pypi.org/project/polars) 0.20.17 → 0.20.31 (Blazingly fast DataFrame library) + * [psutil](https://pypi.org/project/psutil) 5.9.5 → 5.9.8 (Cross-platform lib for process and system monitoring in Python.) + * [psygnal](https://pypi.org/project/psygnal) 0.9.5 → 0.11.1 (Fast python callback/event system modeled after Qt Signals) + * [pyarrow](https://pypi.org/project/pyarrow) 14.0.1 → 16.1.0 (Python library for Apache Arrow) + * [pycparser](https://pypi.org/project/pycparser) 2.21 → 2.22 (C parser in Python) + * [pycryptodomex](https://pypi.org/project/pycryptodomex) 3.18.0 → 3.20.0 (Cryptographic library for Python) + * [pyct](https://pypi.org/project/pyct) 0.4.8 → 0.5.0 (Python package common tasks for users (e.g. copy examples, fetch data, ...)) + * [pydantic](https://pypi.org/project/pydantic) 2.6.4 → 2.7.1 (Data validation using Python type hints) + * [pydantic_core](https://pypi.org/project/pydantic_core) 2.16.3 → 2.18.2 (Core functionality for Pydantic validation and serialization) + * [pydeck](https://pypi.org/project/pydeck) 0.8.0 → 0.9.1 (Widget for deck.gl maps) + * [pyerfa](https://pypi.org/project/pyerfa) 2.0.1.1 → 2.0.1.4 (Python bindings for ERFA) + * [pygments](https://pypi.org/project/pygments) 2.16.1 → 2.18.0 (Pygments is a syntax highlighting package written in Python.) + * [pyjwt](https://pypi.org/project/pyjwt) 2.4.0 → 2.8.0 (JSON Web Token implementation in Python) + * [pymongo](https://pypi.org/project/pymongo) 4.5.0 → 4.7.2 (Python driver for MongoDB ) + * [pynndescent](https://pypi.org/project/pynndescent) 0.5.11 → 0.5.12 (Nearest Neighbor Descent) + * [pyodbc](https://pypi.org/project/pyodbc) 5.0.1 → 5.1.0 (DB API module for ODBC) + * [pyomo](https://pypi.org/project/pyomo) 6.7.0 → 6.7.2 (Pyomo: Python Optimization Modeling Objects) + * [pyparsing](https://pypi.org/project/pyparsing) 3.0.9 → 3.1.2 (pyparsing module - Classes and methods to define and execute parsing grammars) + * [pyproject_hooks](https://pypi.org/project/pyproject_hooks) 1.0.0 → 1.1.0 (Wrappers to call pyproject.toml-based build backend hooks.) + * [pyqtgraph](https://pypi.org/project/pyqtgraph) 0.13.4 → 0.13.7 (Scientific Graphics and GUI Library for Python) + * [pyro_ppl](https://pypi.org/project/pyro_ppl) 1.8.4 → 1.9.0 (A Python library for probabilistic modeling and inference) + * [pytest](https://pypi.org/project/pytest) 7.4.2 → 8.2.0 (pytest: simple powerful testing with Python) + * [Python](http://www.python.org/) 3.12.3 → 3.12.4 (Python programming language with standard library) + * [python_dotenv](https://pypi.org/project/python_dotenv) 1.0.0 → 1.0.1 (Read key-value pairs from a .env file and set them as environment variables) + * [python_multipart](https://pypi.org/project/python_multipart) 0.0.5 → 0.0.9 (A streaming multipart parser for Python) + * [pytoolconfig](https://pypi.org/project/pytoolconfig) 1.2.4 → 1.3.1 (Python tool configuration) + * [pyzmq](https://pypi.org/project/pyzmq) 25.1.2 → 26.0.3 (Python bindings for 0MQ) + * [qdarkstyle](https://pypi.org/project/qdarkstyle) 3.2 → 3.2.3 (The most complete dark/light style sheet for C++/Python and Qt applications) + * [qtconsole](https://pypi.org/project/qtconsole) 5.5.1 → 5.5.2 (Jupyter Qt console) + * [rasterio](https://pypi.org/project/rasterio) 1.3.9 → 1.3.10 (Fast and direct raster I/O for use with Numpy and SciPy) + * [referencing](https://pypi.org/project/referencing) 0.30.2 → 0.31.1 (JSON Referencing + Python) + * [reportlab](https://pypi.org/project/reportlab) 4.0.4 → 4.2.0 (The Reportlab Toolkit) + * [requests_toolbelt](https://pypi.org/project/requests_toolbelt) 0.10.1 → 1.0.0 (A utility belt for advanced users of python-requests) + * [scikit_image](https://pypi.org/project/scikit_image) 0.22.0 → 0.23.2 (Image processing in Python) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.4.1.post1 → 1.5.0 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.12.0 → 1.13.1 (Fundamental algorithms for scientific computing in Python) + * [setuptools](https://pypi.org/project/setuptools) 69.2.0 → 69.5.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * [shapely](https://pypi.org/project/shapely) 2.0.1 → 2.0.4 (Manipulation and analysis of geometric objects) + * [simplejson](https://pypi.org/project/simplejson) 3.17.6 → 3.19.2 (Simple, fast, extensible JSON encoder/decoder for Python) + * [soupsieve](https://pypi.org/project/soupsieve) 2.3.2.post1 → 2.5 (A modern CSS selector implementation for Beautiful Soup.) + * [spyder](https://pypi.org/project/spyder) 5.5.4 → 5.5.5 (The Scientific Python Development Environment) + * [spyder_kernels](https://pypi.org/project/spyder_kernels) 2.5.1 → 2.5.2 (Jupyter kernels for Spyder's console) + * [sqlite_bro](https://pypi.org/project/sqlite_bro) 0.12.2 → 0.13.1 (a graphic SQLite Client in 1 Python file) + * [stack_data](https://pypi.org/project/stack_data) 0.6.1 → 0.6.3 (Extract data from python stack frames and tracebacks for informative displays) + * [starlette](https://pypi.org/project/starlette) 0.35.1 → 0.37.2 (The little ASGI library that shines.) + * [statsmodels](https://pypi.org/project/statsmodels) 0.14.1 → 0.14.2 (Statistical computations and models for Python) + * [streamlit](https://pypi.org/project/streamlit) 1.32.2 → 1.35.0 (A faster way to build and share data apps) + * [sympy](https://pypi.org/project/sympy) 1.12 → 1.12.1 (Computer algebra system (CAS) in Python) + * [terminado](https://pypi.org/project/terminado) 0.17.0 → 0.18.1 (Tornado websocket backend for the Xterm.js Javascript terminal emulator library.) + * [threadpoolctl](https://pypi.org/project/threadpoolctl) 3.1.0 → 3.5.0 (threadpoolctl) + * [tqdm](https://pypi.org/project/tqdm) 4.65.0 → 4.66.4 (Fast, Extensible Progress Meter) + * [trio](https://pypi.org/project/trio) 0.25.0 → 0.25.1 (A friendly Python library for async concurrency and I/O) + * [uvicorn](https://pypi.org/project/uvicorn) 0.26.0 → 0.29.0 (The lightning-fast ASGI server.) + * [virtualenv](https://pypi.org/project/virtualenv) 20.23.0 → 20.26.2 (Virtual Python Environment builder) + * [wcwidth](https://pypi.org/project/wcwidth) 0.2.9 → 0.2.13 (Measures the displayed width of unicode strings in a terminal) + * [websocket_client](https://pypi.org/project/websocket_client) 1.6.4 → 1.8.0 (WebSocket client for Python with low level API options) + * [werkzeug](https://pypi.org/project/werkzeug) 3.0.1 → 3.0.3 (The comprehensive WSGI web application library.) + * [winpython](http://winpython.github.io/) 7.5.20240410 → 8.2.20240618 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2024.2.0 → 2024.6.0 (N-D labeled arrays and datasets in Python) + +Removed packages: + + * [ansi2html](https://pypi.org/project/ansi2html) 1.9.1 (Convert text with ANSI color codes to HTML or to LaTeX) + * [asciitree](https://pypi.org/project/asciitree) 0.3.3 (Draws ASCII trees.) + * [brewer2mpl](https://pypi.org/project/brewer2mpl) 1.4.1 (Connect colorbrewer2.org color maps to Python and matplotlib) + * [dataclasses_json](https://pypi.org/project/dataclasses_json) 0.5.7 (Easily serialize dataclasses to and from JSON) + * [deprecation](https://pypi.org/project/deprecation) 2.1.0 (A library to handle automated deprecations) + * [editables](https://pypi.org/project/editables) 0.3 (Editable installations) + * [emcee](https://pypi.org/project/emcee) 3.1.4 (The Python ensemble sampling toolkit for MCMC) + * [fasteners](https://pypi.org/project/fasteners) 0.18 (A python package that provides useful locks) + * [feather_format](https://pypi.org/project/feather_format) 0.4.1 (Simple wrapper library to the Apache Arrow-based Feather File Format) + * [hatch](https://pypi.org/project/hatch) 1.9.3 (Modern, extensible Python project management) + * [highspy](https://pypi.org/project/highspy) 1.7.1.dev1 (A thin set of pybind11 wrappers to HiGHS) + * [hyperlink](https://pypi.org/project/hyperlink) 21.0.0 (A featureful, immutable, and correct URL for Python.) + * [jupyter_packaging](https://pypi.org/project/jupyter_packaging) 0.12.3 (Jupyter Packaging Utilities.) + * [jupyter_server_mathjax](https://pypi.org/project/jupyter_server_mathjax) 0.2.6 (MathJax resources as a Jupyter Server Extension.) + * [jupyter_sphinx](https://pypi.org/project/jupyter_sphinx) 0.4.0 (Jupyter Sphinx Extensions) + * [langchain_community](https://pypi.org/project/langchain_community) 0.0.29 (Community contributed LangChain integrations.) + * [loky](https://pypi.org/project/loky) 3.4.0 (A robust implementation of concurrent.futures.ProcessPoolExecutor) + * [lz4](https://pypi.org/project/lz4) 4.3.3 (LZ4 Bindings for Python) + * [marshmallow](https://pypi.org/project/marshmallow) 3.12.1 (A lightweight library for converting complex datatypes to and from native Python datatypes.) + * [marshmallow_enum](https://pypi.org/project/marshmallow_enum) 1.5.1 (Enum field for Marshmallow) + * [nbdime](https://pypi.org/project/nbdime) 4.0.1 (Diff and merge of Jupyter Notebooks) + * [nbval](https://pypi.org/project/nbval) 0.9.6 (A py.test plugin to validate Jupyter notebooks) + * [numcodecs](https://pypi.org/project/numcodecs) 0.12.1 (A Python package providing buffer compression and transformation codecs for use in data storage and communication applications.) + * [pyaml](https://pypi.org/project/pyaml) 20.4.0 (PyYAML-based module to produce pretty and readable YAML-serialized data) + * [pygad](https://pypi.org/project/pygad) 3.2.0 (PyGAD: A Python Library for Building the Genetic Algorithm and Training Machine Learning Algoithms (Keras & PyTorch).) + * [pyopengl](https://pypi.org/project/pyopengl) 3.1.7 (Standard OpenGL bindings for Python) + * [pystache](https://pypi.org/project/pystache) 0.5.4 (Mustache for Python) + * [scikit_optimize](https://pypi.org/project/scikit_optimize) 0.10.1 (Sequential model-based optimization toolbox.) + * [snakeviz](https://pypi.org/project/snakeviz) 2.1.0 (A web-based viewer for Python profiler output) + * [supersmoother](https://pypi.org/project/supersmoother) 0.4 (Python implementation of Friedman's Supersmoother) + * [typing_inspect](https://pypi.org/project/typing_inspect) 0.8.0 (Runtime inspection utilities for typing module.) + * [userpath](https://pypi.org/project/userpath) 1.8.0 (Cross-platform tool for adding locations to the user PATH) + * [zarr](https://pypi.org/project/zarr) 2.16.1 (An implementation of chunked, compressed, N-dimensional arrays for Python) + + +
+* * * diff --git a/changelogs/WinPython-64bit-3.12.6.0.md b/changelogs/WinPython-64bit-3.12.6.0.md new file mode 100644 index 00000000..04bfa915 --- /dev/null +++ b/changelogs/WinPython-64bit-3.12.6.0.md @@ -0,0 +1,550 @@ +## WinPython 3.12.6.0 + +The following packages are included in WinPython-64bit v3.12.6.0 . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Nodejs](https://nodejs.org) | v20.15.1 | a JavaScript runtime built on Chrome's V8 JavaScript engine +[npmjs](https://www.npmjs.com/) | 10.7.0 | a package manager for JavaScript +[Pandoc](https://pandoc.org/) | 3.1.9 | a universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.6 | Python programming language with standard library +[about_time](https://pypi.org/project/about_time) | 4.2.1 | Easily measure timing and throughput of code blocks, with beautiful human friendly representations. +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[accelerate](https://pypi.org/project/accelerate) | 0.28.0 | Accelerate +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 0.11.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[affine](https://pypi.org/project/affine) | 2.3.1 | Matrices describing affine transformation of the plane. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohttp](https://pypi.org/project/aiohttp) | 3.9.5 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[alive_progress](https://pypi.org/project/alive_progress) | 3.1.5 | A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations! +[altair](https://pypi.org/project/altair) | 5.4.1 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anyio](https://pypi.org/project/anyio) | 4.4.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.8 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.0 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.4.29.0.28.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autograd](https://pypi.org/project/autograd) | 1.6.2 | Efficiently computes derivatives of numpy code. +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.15.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.8.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.5.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.7.2 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.3.3 | Extensible memoizing collections and decorators +[cartopy](https://pypi.org/project/cartopy) | 0.23.0 | A Python library for cartographic visualizations with Matplotlib +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.16.0 | Foreign Function Interface for Python calling C code. +[cftime](https://pypi.org/project/cftime) | 1.6.3 | Time-handling functionality from netcdf4-python +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.3.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[click_plugins](https://pypi.org/project/click_plugins) | 1.1.1 | An extension module for click to enable registering CLI commands via setuptools entry-points. +[cligj](https://pypi.org/project/cligj) | 0.7.2 | Click params for commmand line interfaces to GeoJSON +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[clr_loader](https://pypi.org/project/clr_loader) | 0.2.6 | Generic pure Python loader for .NET runtimes +[clrmagic](https://pypi.org/project/clrmagic) | 0.0.1a2 | IPython cell magic to use .NET languages +[cma](https://pypi.org/project/cma) | 3.2.2 | CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.2.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[coverage](https://pypi.org/project/coverage) | 7.5.3 | Code coverage measurement for Python +[cryptography](https://pypi.org/project/cryptography) | 41.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.5.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 0.12.3 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.7.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.9 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[deap](https://pypi.org/project/deap) | 1.4.1 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.13 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[dirty_cat](https://pypi.org/project/dirty_cat) | 0.4.1 | Machine learning with dirty categories. +[distlib](https://pypi.org/project/distlib) | 0.3.8 | Distribution utilities +[distributed](https://pypi.org/project/distributed) | 2024.7.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.0.0 | DuckDB in-process database +[ecos](https://pypi.org/project/ecos) | 2.0.13 | This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information. +[email_validator](https://pypi.org/project/email_validator) | 2.2.0 | A robust email address syntax and deliverability validation library. +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.111.1 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastapi_cli](https://pypi.org/project/fastapi_cli) | 0.0.4 | Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀 +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[fiona](https://pypi.org/project/fiona) | 1.9.5 | Fiona reads and writes spatial data files +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.17.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.51.0 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.4.1 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 0.14.4 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[grapheme](https://pypi.org/project/grapheme) | 0.6.0 | Unicode grapheme helpers +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.0.3 | Lightweight in-process concurrent programming +[guidata](https://pypi.org/project/guidata) | 3.6.2 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.10.0 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.25.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.19.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.3 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httptools](https://pypi.org/project/httptools) | 0.6.1 | A collection of framework independent HTTP protocol utils. +[httpx](https://pypi.org/project/httpx) | 0.27.0 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.24.5 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.10.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.108.5 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.12.3 | Toolbox for imbalanced dataset in machine learning. +[immutabledict](https://pypi.org/project/immutabledict) | 4.2.0 | Immutable wrapper around dictionaries (a fork of frozendict) +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.26.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 1.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 5.3.0 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.0.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.0.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.5.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.0.0 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.2.5 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.5.0 | Multi-backend Keras. +[keyring](https://pypi.org/project/keyring) | 25.2.1 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.5 | A fast implementation of the Cassowary constraint solver +[kornia](https://pypi.org/project/kornia) | 0.7.2 | Open Source Differentiable Computer Vision Library for PyTorch +[kornia_rs](https://pypi.org/project/kornia_rs) | 0.1.3 | Low level implementations for computer vision in Rust +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[lightning](https://pypi.org/project/lightning) | 2.4.0 | The Deep Learning framework to train, deploy, and ship AI products Lightning fast. +[lightning_utilities](https://pypi.org/project/lightning_utilities) | 0.11.6 | Lightning toolbox for across the our ecosystem. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.43.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[lxml](https://pypi.org/project/lxml) | 5.2.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.9.2 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.7.0 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.4.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.22.0 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[multidict](https://pypi.org/project/multidict) | 6.0.5 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.11.1 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.5.5 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[netcdf4](https://pypi.org/project/netcdf4) | 1.7.1.post2 | Provides an object-oriented python interface to the netCDF version 4 library +[networkx](https://pypi.org/project/networkx) | 3.3 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.8.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.2.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[ntlm_auth](https://pypi.org/project/ntlm_auth) | 1.5.0 | Creates NTLM authentication structures +[numba](https://pypi.org/project/numba) | 0.60.0 | compiling Python code using LLVM +[numexpr](https://pypi.org/project/numexpr) | 2.10.1 | Fast numerical expression evaluator for NumPy +[numpy](https://pypi.org/project/numpy) | 2.0.1 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.42.0 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.11.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.9.15 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ortools](https://pypi.org/project/ortools) | 9.10.4067 | Google OR-Tools python libraries and modules +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.2 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.5.0b4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 10.4.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.9.6 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.23.0 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.6.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[pmdarima](https://pypi.org/project/pmdarima) | 2.0.4 | Python's forecast::auto.arima equivalent +[polars](https://pypi.org/project/polars) | 1.6.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.47 | Library for building powerful interactive command lines in Python +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pulp](https://pypi.org/project/pulp) | 2.6.0 | PuLP is an LP modeler written in python +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 17.0.0 | Python library for Apache Arrow +[pyaudio](https://pypi.org/project/pyaudio) | 0.2.14 | Cross-platform audio I/O with PortAudio +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.13.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycosat](https://pypi.org/project/pycosat) | 0.6.6 | bindings to picosat (a SAT solver) +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.8.2 | Data validation using Python type hints +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.20.1 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyepsg](https://pypi.org/project/pyepsg) | 0.4.0 | Easy access to the EPSG database via http://epsg.io/ +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygame](https://pypi.org/project/pygame) | 2.5.2 | Python Game Development +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.7.2 | Python driver for MongoDB +[pymoo](https://pypi.org/project/pymoo) | 0.6.1.3 | Multi-Objective Optimization in Python +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.1.0 | DB API module for ODBC +[pyomo](https://pypi.org/project/pyomo) | 6.8.0 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.1.2 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pypng](https://pypi.org/project/pypng) | 0.20220715.0 | Pure Python library for saving and loading PNG images +[pyproj](https://pypi.org/project/pyproj) | 3.6.1 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.13.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pyshp](https://pypi.org/project/pyshp) | 2.3.1 | Pure Python read/write support for ESRI Shapefile format +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonnet](https://pypi.org/project/pythonnet) | 3.0.3 | .NET and Mono integration for Python +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.12.7 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytorch_lightning](https://pypi.org/project/pytorch_lightning) | 2.3.3 | PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate. +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywin32](https://pypi.org/project/pywin32) | 306 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.12 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.1 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.0.3 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qpsolvers](https://pypi.org/project/qpsolvers) | 4.3.0 | Quadratic programming solvers in Python with a unified API. +[qrcode](https://pypi.org/project/qrcode) | 7.4.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.3 | rapid fuzzy string matching +[rasterio](https://pypi.org/project/rasterio) | 1.3.10 | Fast and direct raster I/O for use with Numpy and SciPy +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.3 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2023.10.3 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.31.0 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.1.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.7.1 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.13.2 | Python bindings to Rust's persistent data structures (rpds) +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[safetensors](https://pypi.org/project/safetensors) | 0.4.3 | +[scikit_image](https://pypi.org/project/scikit_image) | 0.24.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.5.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.14.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.4.post1 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.4 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.0.post1 | Tool to Detect Surrounding Shell +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[snuggs](https://pypi.org/project/snuggs) | 1.4.7 | Snuggs are s-expressions for Numpy +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.8 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.6 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.5 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.7 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.30 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.37 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.4.3 | A non-validating SQL parser. +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.37.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.2 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.37.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[swifter](https://pypi.org/project/swifter) | 1.3.4 | A package which efficiently applies any function to a pandas dataframe or series in the fastest available manner +[sympy](https://pypi.org/project/sympy) | 1.13.2 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tbats](https://pypi.org/project/tbats) | 1.1.0 | BATS and TBATS for time series forecasting +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.5.0 | Retry code until it succeeds +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.2 | Compute distance between the two texts. +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2024.7.2 | Read and write TIFF files +[tinycss2](https://pypi.org/project/tinycss2) | 1.3.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.19.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 0.12.0 | List processing tools and functional utilities +[torch](https://pypi.org/project/torch) | 2.4.1 | Tensors and Dynamic neural networks in Python with strong GPU acceleration +[torchaudio](https://pypi.org/project/torchaudio) | 2.4.1 | An audio package for PyTorch +[torchmetrics](https://pypi.org/project/torchmetrics) | 1.4.1 | PyTorch native Metrics +[tornado](https://pypi.org/project/tornado) | 6.4.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[transformers](https://pypi.org/project/transformers) | 4.44.0 | State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow +[trio](https://pypi.org/project/trio) | 0.26.2 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2023.2.20 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 4.0.1 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.12.3 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.8.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.30.3 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[virtualenv](https://pypi.org/project/virtualenv) | 20.26.2 | Virtual Python Environment builder +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 4.0.1 | Filesystem events monitoring +[watchfiles](https://pypi.org/project/watchfiles) | 0.21.0 | Simple, modern and high performance file watching and code reload in python. +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 1.12 | A library for working with color names and color values formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 12.0 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.0.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.2 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.3 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2024.7.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xlwings](https://pypi.org/project/xlwings) | 0.24.7 | Make Excel fly: Interact with Excel from Python and vice versa. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.7.2 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.17.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPython-64bit-3.12.6.0_History.md b/changelogs/WinPython-64bit-3.12.6.0_History.md new file mode 100644 index 00000000..18527fdf --- /dev/null +++ b/changelogs/WinPython-64bit-3.12.6.0_History.md @@ -0,0 +1,187 @@ +## History of changes for WinPython-64bit 3.12.6.0 + +The following changes were made to WinPython-64bit distribution since version 3.12.4.1. + +
+### Tools + +Upgraded packages: + + * [Nodejs](https://nodejs.org) v20.12.2 → v20.15.1 (a JavaScript runtime built on Chrome's V8 JavaScript engine) + * [npmjs](https://www.npmjs.com/) 10.5.0 → 10.7.0 (a package manager for JavaScript) + +### Python packages + +New packages: + + * [immutabledict](https://pypi.org/project/immutabledict) 4.2.0 (Immutable wrapper around dictionaries (a fork of frozendict)) + * [jiter](https://pypi.org/project/jiter) 0.5.0 (Fast iterable JSON parser.) + * [narwhals](https://pypi.org/project/narwhals) 1.5.5 (Extremely lightweight compatibility layer between dataframe libraries) + * [types_python_dateutil](https://pypi.org/project/types_python_dateutil) 2.9.0.20240316 (Typing stubs for python-dateutil) + +Upgraded packages: + + * [altair](https://pypi.org/project/altair) 5.3.0 → 5.4.1 (Vega-Altair: A declarative statistical visualization library for Python.) + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.7.1 → 1.8 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [arrow](https://pypi.org/project/arrow) 1.2.2 → 1.3.0 (Better dates & times for Python) + * [azure_core](https://pypi.org/project/azure_core) 1.30.1 → 1.30.2 (Microsoft Azure Core Library for Python) + * [azure_cosmos](https://pypi.org/project/azure_cosmos) 4.6.0 → 4.7.0 (Microsoft Azure Cosmos Client Library for Python) + * [azure_identity](https://pypi.org/project/azure_identity) 1.16.0 → 1.16.1 (Microsoft Azure Identity Library for Python) + * [black](https://pypi.org/project/black) 24.4.2 → 24.8.0 (The uncompromising code formatter.) + * [bokeh](https://pypi.org/project/bokeh) 3.4.1 → 3.5.1 (Interactive plots and applications in the browser from Python) + * [cython](https://pypi.org/project/cython) 3.0.10 → 3.0.11 (The Cython compiler for writing C extensions in the Python language.) + * [dask](https://pypi.org/project/dask) 2024.5.2 → 2024.7.1 (Parallel PyData with Task Scheduling) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.2 → 1.1.9 (High Level Expressions for Dask ) + * [datasette](https://pypi.org/project/datasette) 0.64.6 → 0.64.8 (An open source multi-tool for exploring and publishing data) + * [datashader](https://pypi.org/project/datashader) 0.16.2 → 0.16.3 (Data visualization toolchain based on aggregating into a grid) + * [decorator](https://pypi.org/project/decorator) 4.4.2 → 5.1.1 (Decorators for Humans) + * [diff_match_patch](https://pypi.org/project/diff_match_patch) 20200713 → 20230430 (Diff Match and Patch) + * [distributed](https://pypi.org/project/distributed) 2024.5.2 → 2024.7.1 (Distributed scheduler for Dask) + * [django](https://pypi.org/project/django) 5.0.6 → 5.0.7 (A high-level Python web framework that encourages rapid development and clean, pragmatic design.) + * [email_validator](https://pypi.org/project/email_validator) 2.1.1 → 2.2.0 (A robust email address syntax and deliverability validation library.) + * [fastapi](https://pypi.org/project/fastapi) 0.111.0 → 0.111.1 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [flake8](https://pypi.org/project/flake8) 7.0.0 → 7.1.1 (the modular source code checker: pep8 pyflakes and co) + * [folium](https://pypi.org/project/folium) 0.16.0 → 0.17.0 (Make beautiful maps with Leaflet.js & Python) + * [fsspec](https://pypi.org/project/fsspec) 2024.3.1 → 2024.6.1 (File-system specification) + * [guidata](https://pypi.org/project/guidata) 3.5.0 → 3.6.2 (Automatic GUI generation for easy dataset editing and display) + * [hatchling](https://pypi.org/project/hatchling) 1.24.2 → 1.25.0 (Modern, extensible Python build backend) + * [holoviews](https://pypi.org/project/holoviews) 1.19.0 → 1.19.1 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [httpie](https://pypi.org/project/httpie) 3.2.2 → 3.2.3 (HTTPie: modern, user-friendly command-line HTTP client for the API era.) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.23.0 → 0.24.5 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypothesis](https://pypi.org/project/hypothesis) 6.100.5 → 6.108.5 (A library for property-based testing) + * [ipykernel](https://pypi.org/project/ipykernel) 6.29.4 → 6.29.5 (IPython Kernel for Jupyter) + * [ipyleaflet](https://pypi.org/project/ipyleaflet) 0.19.1 → 0.19.2 (A Jupyter widget for dynamic Leaflet maps) + * [ipython](https://pypi.org/project/ipython) 8.25.0 → 8.26.0 (IPython: Productive Interactive Computing) + * [ipywidgets](https://pypi.org/project/ipywidgets) 8.1.2 → 8.1.5 (Jupyter interactive widgets) + * [jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) 0.19.1 → 0.19.2 (ipyleaflet extensions for JupyterLab and Jupyter Notebook) + * [jupyter_server](https://pypi.org/project/jupyter_server) 2.14.1 → 2.14.2 (The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.2.2 → 4.2.5 (JupyterLab computational environment) + * [jupyterlab_server](https://pypi.org/project/jupyterlab_server) 2.27.2 → 2.27.3 (A set of server components for JupyterLab and JupyterLab like applications.) + * [jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) 3.0.11 → 3.0.13 (Jupyter interactive widgets for JupyterLab) + * [keras](https://pypi.org/project/keras) 3.3.3 → 3.5.0 (Multi-backend Keras.) + * [lightning](https://pypi.org/project/lightning) 2.2.1 → 2.4.0 (The Deep Learning framework to train, deploy, and ship AI products Lightning fast.) + * [lightning_utilities](https://pypi.org/project/lightning_utilities) 0.10.0 → 0.11.6 (Lightning toolbox for across the our ecosystem.) + * [mako](https://pypi.org/project/mako) 1.2.0 → 1.3.5 (A super-fast templating language that borrows the best ideas from the existing templating languages.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.9.0 → 3.9.2 (Python plotting package) + * [maturin](https://pypi.org/project/maturin) 1.5.1 → 1.7.0 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * [msal](https://pypi.org/project/msal) 1.24.1 → 1.30.0 (The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us) + * [msal_extensions](https://pypi.org/project/msal_extensions) 1.0.0 → 1.2.0 (Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an) + * [mypy](https://pypi.org/project/mypy) 1.10.0 → 1.11.1 (Optional static typing for Python) + * [netcdf4](https://pypi.org/project/netcdf4) 1.6.5 → 1.7.1.post2 (Provides an object-oriented python interface to the netCDF version 4 library) + * [numexpr](https://pypi.org/project/numexpr) 2.10.0 → 2.10.1 (Fast numerical expression evaluator for NumPy) + * [numpy](https://pypi.org/project/numpy) 1.26.4 → 2.0.1 (Fundamental package for array computing in Python) + * [openai](https://pypi.org/project/openai) 1.33.0 → 1.42.0 (The official Python library for the openai API) + * [opencv_python](https://pypi.org/project/opencv_python) 4.10.0.82 → 4.10.0.84 (Wrapper package for OpenCV python bindings.) + * [ortools](https://pypi.org/project/ortools) 9.8.3296 → 9.10.4067 (Google OR-Tools python libraries and modules) + * [panel](https://pypi.org/project/panel) 1.4.4 → 1.5.0b4 (The powerful data exploration & web app framework for Python.) + * [param](https://pypi.org/project/param) 2.1.0 → 2.1.1 (Make your Python code clearer and more reliable by declaring Parameters.) + * [pillow](https://pypi.org/project/pillow) 10.3.0 → 10.4.0 (Python Imaging Library (Fork)) + * [pip](https://pypi.org/project/pip) 24.0 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [plotly](https://pypi.org/project/plotly) 5.22.0 → 5.23.0 (An open-source, interactive data visualization library for Python) + * [plotpy](https://pypi.org/project/plotpy) 2.3.0 → 2.6.2 (Curve and image plotting tools for Python/Qt applications) + * [polars](https://pypi.org/project/polars) 0.20.31 → 1.6.0 (Blazingly fast DataFrame library) + * [prompt_toolkit](https://pypi.org/project/prompt_toolkit) 3.0.43 → 3.0.47 (Library for building powerful interactive command lines in Python) + * [protobuf](https://pypi.org/project/protobuf) 4.25.1 → 5.27.3 () + * [ptpython](https://pypi.org/project/ptpython) 3.0.26 → 3.0.29 (Python REPL build on top of prompt_toolkit) + * [pyarrow](https://pypi.org/project/pyarrow) 16.1.0 → 17.0.0 (Python library for Apache Arrow) + * [pybind11](https://pypi.org/project/pybind11) 2.12.0 → 2.13.1 (Seamless operability between C++11 and Python) + * [pycodestyle](https://pypi.org/project/pycodestyle) 2.11.1 → 2.12.0 (Python style guide checker) + * [pydantic](https://pypi.org/project/pydantic) 2.7.1 → 2.8.2 (Data validation using Python type hints) + * [pydantic_core](https://pypi.org/project/pydantic_core) 2.18.2 → 2.20.1 (Core functionality for Pydantic validation and serialization) + * [pymoo](https://pypi.org/project/pymoo) 0.6.1.1 → 0.6.1.3 (Multi-Objective Optimization in Python) + * [pyomo](https://pypi.org/project/pyomo) 6.7.2 → 6.8.0 (Pyomo: Python Optimization Modeling Objects) + * [pytest](https://pypi.org/project/pytest) 8.2.0 → 8.2.2 (pytest: simple powerful testing with Python) + * [Python](http://www.python.org/) 3.12.4 → 3.12.6 (Python programming language with standard library) + * [python_lsp_server](https://pypi.org/project/python_lsp_server) 1.11.0 → 1.12.0 (Python Language Server for the Language Server Protocol) + * [python_slugify](https://pypi.org/project/python_slugify) 6.1.2 → 8.0.4 (A Python slugify application that also handles Unicode) + * [pythonqwt](https://pypi.org/project/pythonqwt) 0.12.1 → 0.12.7 (Qt plotting widgets for Python) + * [pytorch_lightning](https://pypi.org/project/pytorch_lightning) 2.2.1 → 2.3.3 (PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate.) + * [pytz](https://pypi.org/project/pytz) 2023.3 → 2024.1 (World timezone definitions, modern and historical) + * [pyviz_comms](https://pypi.org/project/pyviz_comms) 3.0.2 → 3.0.3 (A JupyterLab extension for rendering HoloViz content.) + * [quantecon](https://pypi.org/project/quantecon) 0.5.3 → 0.7.2 (Import the main names to top level.) + * [rapidfuzz](https://pypi.org/project/rapidfuzz) 3.5.2 → 3.9.3 (rapid fuzzy string matching) + * [redis](https://pypi.org/project/redis) 4.3.1 → 5.0.3 (Python client for Redis database and key-value store) + * [referencing](https://pypi.org/project/referencing) 0.31.1 → 0.35.1 (JSON Referencing + Python) + * [reportlab](https://pypi.org/project/reportlab) 4.2.0 → 4.2.2 (The Reportlab Toolkit) + * [safetensors](https://pypi.org/project/safetensors) 0.4.2 → 0.4.3 () + * [scikit_image](https://pypi.org/project/scikit_image) 0.23.2 → 0.24.0 (Image processing in Python) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.5.0 → 1.5.1 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.13.1 → 1.14.1 (Fundamental algorithms for scientific computing in Python) + * [setuptools](https://pypi.org/project/setuptools) 69.5.1 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [sphinx](https://pypi.org/project/sphinx) 7.2.6 → 7.3.7 (Python documentation generator) + * [sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) 1.0.2 → 1.0.8 (sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books) + * [sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) 1.0.2 → 1.0.6 (sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents) + * [sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) 2.0.0 → 2.0.5 (sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files) + * [sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) 1.0.3 → 1.0.7 (sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents) + * [spyder](https://pypi.org/project/spyder) 5.5.5 → 5.5.6 (The Scientific Python Development Environment) + * [sqlalchemy](https://pypi.org/project/sqlalchemy) 2.0.28 → 2.0.30 (Database Abstraction Library) + * [sqlite_utils](https://pypi.org/project/sqlite_utils) 3.36 → 3.37 (CLI tool and Python library for manipulating SQLite databases) + * [streamlit](https://pypi.org/project/streamlit) 1.35.0 → 1.37.1 (A faster way to build and share data apps) + * [sympy](https://pypi.org/project/sympy) 1.12.1 → 1.13.2 (Computer algebra system (CAS) in Python) + * [tblib](https://pypi.org/project/tblib) 1.7.0 → 3.0.0 (Traceback serialization library.) + * [tenacity](https://pypi.org/project/tenacity) 8.1.0 → 8.5.0 (Retry code until it succeeds) + * [textdistance](https://pypi.org/project/textdistance) 4.5.0 → 4.6.2 (Compute distance between the two texts.) + * [tifffile](https://pypi.org/project/tifffile) 2023.7.18 → 2024.7.2 (Read and write TIFF files) + * [tinycss2](https://pypi.org/project/tinycss2) 1.1.1 → 1.3.0 (A tiny CSS parser) + * [tokenizers](https://pypi.org/project/tokenizers) 0.15.1 → 0.19.1 () + * [torch](https://pypi.org/project/torch) 2.2.2 → 2.4.1 (Tensors and Dynamic neural networks in Python with strong GPU acceleration) + * [torchaudio](https://pypi.org/project/torchaudio) 2.2.2 → 2.4.1 (An audio package for PyTorch) + * [torchmetrics](https://pypi.org/project/torchmetrics) 1.3.2 → 1.4.1 (PyTorch native Metrics) + * [tornado](https://pypi.org/project/tornado) 6.4 → 6.4.1 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * [transformers](https://pypi.org/project/transformers) 4.38.2 → 4.44.0 (State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow) + * [trio](https://pypi.org/project/trio) 0.25.1 → 0.26.2 (A friendly Python library for async concurrency and I/O) + * [typing_extensions](https://pypi.org/project/typing_extensions) 4.9.0 → 4.12.2 (Backported and Experimental Type Hints for Python 3.8+) + * [tzdata](https://pypi.org/project/tzdata) 2022.7 → 2024.1 (Provider of IANA time zone data) + * [tzlocal](https://pypi.org/project/tzlocal) 4.2 → 5.2 (tzinfo object for the local timezone) + * [umap_learn](https://pypi.org/project/umap_learn) 0.5.1 → 0.5.6 (Uniform Manifold Approximation and Projection) + * [uri_template](https://pypi.org/project/uri_template) 1.2.0 → 1.3.0 (RFC 6570 URI Template Processor) + * [uvicorn](https://pypi.org/project/uvicorn) 0.29.0 → 0.30.3 (The lightning-fast ASGI server.) + * [waitress](https://pypi.org/project/waitress) 2.1.2 → 3.0.0 (Waitress WSGI server) + * [watchdog](https://pypi.org/project/watchdog) 2.2.0 → 4.0.1 (Filesystem events monitoring) + * [wheel](https://pypi.org/project/wheel) 0.43.0 → 0.44.0 (A built-package format for Python) + * [widgetsnbextension](https://pypi.org/project/widgetsnbextension) 4.0.10 → 4.0.13 (Jupyter interactive widgets for Jupyter Notebook) + * [winpython](https://pypi.org/project/winpython) 8.2.20240618 → 10.7.20240908 (WinPython distribution tools, including WPPM) + * [wrapt](https://pypi.org/project/wrapt) 1.14.1 → 1.16.0 (Module for decorators, wrappers and monkey patching.) + * [xarray](https://pypi.org/project/xarray) 2024.6.0 → 2024.7.0 (N-D labeled arrays and datasets in Python) + * [zstandard](https://pypi.org/project/zstandard) 0.22.0 → 0.23.0 (Zstandard bindings for Python) + +Removed packages: + + * [altair_data_server](https://pypi.org/project/altair_data_server) 0.4.1 (A background data server for Altair charts.) + * [altair_transform](https://pypi.org/project/altair_transform) 0.2.0 (A python engine for evaluating Altair transforms.) + * [async_timeout](https://pypi.org/project/async_timeout) 4.0.3 (Timeout context manager for asyncio programs) + * [botorch](https://pypi.org/project/botorch) 0.9.5 (Bayesian Optimization in PyTorch) + * [dash](https://pypi.org/project/dash) 2.17.0 (A Python framework for building reactive web-apps. Developed by Plotly.) + * [dash_core_components](https://pypi.org/project/dash_core_components) 2.0.0 (Core component suite for Dash) + * [dash_html_components](https://pypi.org/project/dash_html_components) 2.0.0 (Vanilla HTML components for Dash) + * [dash_table](https://pypi.org/project/dash_table) 5.0.0 (Dash table) + * [dask_image](https://pypi.org/project/dask_image) 2024.5.3 (Distributed image processing) + * [gdal](https://pypi.org/project/gdal) 3.7.3 (GDAL: Geospatial Data Abstraction Library) + * [gpytorch](https://pypi.org/project/gpytorch) 1.11 (An implementation of Gaussian Processes in Pytorch) + * [imageio_ffmpeg](https://pypi.org/project/imageio_ffmpeg) 0.4.8 (FFMPEG wrapper for Python) + * [jaxtyping](https://pypi.org/project/jaxtyping) 0.2.22 (Type annotations and runtime checking for shape and dtype of JAX arrays, and PyTrees.) + * [jsonpatch](https://pypi.org/project/jsonpatch) 1.33 (Apply JSON-Patches (RFC 6902) ) + * [langchain](https://pypi.org/project/langchain) 0.2.5 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.2.7 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.2.1 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.1.77 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [linear_operator](https://pypi.org/project/linear_operator) 0.5.1 (A linear operator implementation, primarily designed for finite-dimensional positive definite operators (i.e. kernel matrices).) + * [moviepy](https://pypi.org/project/moviepy) 1.0.3 (Video editing with Python) + * [opt_einsum](https://pypi.org/project/opt_einsum) 3.3.0 (Optimizing numpys einsum function) + * [pims](https://pypi.org/project/pims) 0.6.1 (Python Image Sequence) + * [portpicker](https://pypi.org/project/portpicker) 1.5.0 (A library to choose unique available network ports.) + * [proglog](https://pypi.org/project/proglog) 0.1.10 (Log and progress bar manager for console, notebooks, web...) + * [pyro_api](https://pypi.org/project/pyro_api) 0.1.2 (Generic API for dispatch to Pyro backends.) + * [pyro_ppl](https://pypi.org/project/pyro_ppl) 1.9.0 (A Python library for probabilistic modeling and inference) + * [pytz_deprecation_shim](https://pypi.org/project/pytz_deprecation_shim) 0.1.0.post0 (Shims to make deprecation of pytz easier) + * [retrying](https://pypi.org/project/retrying) 1.3.4 (Retrying) + * [slicerator](https://pypi.org/project/slicerator) 1.1.0 (A lazy-loading, fancy-sliceable iterable.) + * [torchvision](https://pypi.org/project/torchvision) 0.17.2 (image and video datasets and models for torch deep learning) + * [typeguard](https://pypi.org/project/typeguard) 2.13.3 (Run-time type checker for Python) + * [wasmer](https://pypi.org/project/wasmer) 1.1.0 (Python extension to run WebAssembly binaries) + * [wasmer_compiler_cranelift](https://pypi.org/project/wasmer_compiler_cranelift) 1.1.0 (Python extension to run WebAssembly binaries) + * [wasmer_compiler_singlepass](https://pypi.org/project/wasmer_compiler_singlepass) 1.1.0 (Python extension to run WebAssembly binaries) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.11.9.0.md b/changelogs/WinPythondot-64bit-3.11.9.0.md new file mode 100644 index 00000000..9e748825 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.11.9.0.md @@ -0,0 +1,29 @@ +## WinPython 3.11.9.0dot + +The following packages are included in WinPython-64bit v3.11.9.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.11.9 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.11.9.0_History.md b/changelogs/WinPythondot-64bit-3.11.9.0_History.md new file mode 100644 index 00000000..ad7c0e81 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.11.9.0_History.md @@ -0,0 +1,27 @@ +## History of changes for WinPython-64bit 3.11.9.0dot + +The following changes were made to WinPython-64bit distribution since version 3.11.6.0dot. + +
+### Python packages + +New packages: + + * [build](https://pypi.org/project/build) 1.2.1 (A simple, correct Python build frontend) + * [colorama](https://pypi.org/project/colorama) 0.4.6 (Cross-platform colored terminal text.) + * [packaging](https://pypi.org/project/packaging) 24.1 (Core utilities for Python packages) + * [pyproject_hooks](https://pypi.org/project/pyproject_hooks) 1.1.0 (Wrappers to call pyproject.toml-based build backend hooks.) + +Upgraded packages: + + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.36.32532 → 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + * [pip](https://pypi.org/project/pip) 23.2.1 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.11.6 → 3.11.9 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 68.2.2 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [sqlite_bro](https://pypi.org/project/sqlite_bro) 0.12.2 → 0.13.1 (a graphic SQLite Client in 1 Python file) + * [wheel](https://pypi.org/project/wheel) 0.40.0 → 0.44.0 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 7.0.20231126 → 10.7.20240908 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.10.0.md b/changelogs/WinPythondot-64bit-3.12.10.0.md new file mode 100644 index 00000000..31153ea2 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.10.0.md @@ -0,0 +1,29 @@ +## WinPython 3.12.10.0dot + +The following packages are included in WinPython-64bit v3.12.10.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.10 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.0.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.8.2 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 15.3.20250425 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.10.0_History.md b/changelogs/WinPythondot-64bit-3.12.10.0_History.md new file mode 100644 index 00000000..aef40183 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.10.0_History.md @@ -0,0 +1,22 @@ +## History of changes for WinPython-64bit 3.12.10.0dot + +The following changes were made to WinPython-64bit distribution since version 3.12.9.0dot. + +
+ +### Python packages + +New packages: + + * [sv-ttk](https://pypi.org/project/sv-ttk) 2.6.0 (A gorgeous theme for Tkinter, based on Windows 11's UI) + +Upgraded packages: + + * [pip](https://pypi.org/project/pip) 24.3.1 → 25.0.1 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.12.9 → 3.12.10 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 75.6.0 → 75.8.2 (Easily download, build, install, upgrade, and uninstall Python packages) + * [winpython](https://pypi.org/project/winpython) 13.1.20250215 → 15.3.20250425 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.10.1.md b/changelogs/WinPythondot-64bit-3.12.10.1.md new file mode 100644 index 00000000..75cf9d16 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.10.1.md @@ -0,0 +1,36 @@ +## WinPython 3.12.10.1dot + +The following packages are included in WinPython-64bit v3.12.10.1dot 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.10 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.5.20250614 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythondot-64bit-3.12.10.1_History.md b/changelogs/WinPythondot-64bit-3.12.10.1_History.md new file mode 100644 index 00000000..1b70bafc --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.10.1_History.md @@ -0,0 +1,34 @@ +## History of changes for WinPython-64bit 3.12.10.1dot + +The following changes were made to WinPython-64bit distribution since version 3.12.10.0dot. + + +
+ +### Tools + + +New packages: + * Python 3.12.10 (Python programming language with standard library) + +### Python packages + + +Upgraded packages: + * packaging 24.2 → 25.0 (Core utilities for Python packages) + * pip 25.0.1 → 25.1.1 (The PyPA recommended tool for installing Python packages.) + * setuptools 75.8.2 → 79.0.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * winpython 15.3.20250425 → 16.5.20250614 (WinPython distribution tools, including WPPM) + +Removed packages: + * Python 3.12.10 (Python programming language with standard library) + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythondot-64bit-3.12.4.1.md b/changelogs/WinPythondot-64bit-3.12.4.1.md new file mode 100644 index 00000000..644564c7 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.4.1.md @@ -0,0 +1,29 @@ +## WinPython 3.12.4.1dot + +The following packages are included in WinPython-64bit v3.12.4.1dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.4 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.0 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 69.5.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.43.0 | A built-package format for Python +[winpython](http://winpython.github.io/) | 8.2.20240618 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.4.1_History.md b/changelogs/WinPythondot-64bit-3.12.4.1_History.md new file mode 100644 index 00000000..f2f8bca7 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.4.1_History.md @@ -0,0 +1,21 @@ +## History of changes for WinPython-64bit 3.12.4.1dot + +The following changes were made to WinPython-64bit distribution since version 3.12.3.0dot. + +
+### Python packages + +Upgraded packages: + + * [build](https://pypi.org/project/build) 1.1.1 → 1.2.1 (A simple, correct Python build frontend) + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.38.33135 → 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + * [packaging](https://pypi.org/project/packaging) 23.2 → 24.1 (Core utilities for Python packages) + * [pyproject_hooks](https://pypi.org/project/pyproject_hooks) 1.0.0 → 1.1.0 (Wrappers to call pyproject.toml-based build backend hooks.) + * [Python](http://www.python.org/) 3.12.3 → 3.12.4 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 69.2.0 → 69.5.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * [sqlite_bro](https://pypi.org/project/sqlite_bro) 0.12.2 → 0.13.1 (a graphic SQLite Client in 1 Python file) + * [winpython](http://winpython.github.io/) 7.5.20240410 → 8.2.20240618 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.6.0.md b/changelogs/WinPythondot-64bit-3.12.6.0.md new file mode 100644 index 00000000..735c729d --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.6.0.md @@ -0,0 +1,29 @@ +## WinPython 3.12.6.0dot + +The following packages are included in WinPython-64bit v3.12.6.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.6 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.6.0_History.md b/changelogs/WinPythondot-64bit-3.12.6.0_History.md new file mode 100644 index 00000000..25ef2ad3 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.6.0_History.md @@ -0,0 +1,18 @@ +## History of changes for WinPython-64bit 3.12.6.0dot + +The following changes were made to WinPython-64bit distribution since version 3.12.4.1dot. + +
+### Python packages + +Upgraded packages: + + * [pip](https://pypi.org/project/pip) 24.0 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.12.4 → 3.12.6 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 69.5.1 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [wheel](https://pypi.org/project/wheel) 0.43.0 → 0.44.0 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 8.2.20240618 → 10.7.20240908 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.8.0.md b/changelogs/WinPythondot-64bit-3.12.8.0.md new file mode 100644 index 00000000..6546f300 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.8.0.md @@ -0,0 +1,28 @@ +## WinPython 3.12.8.0dot + +The following packages are included in WinPython-64bit v3.12.8.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.8 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 11.2.20241228 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.8.0_History.md b/changelogs/WinPythondot-64bit-3.12.8.0_History.md new file mode 100644 index 00000000..9a86e325 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.8.0_History.md @@ -0,0 +1,23 @@ +## History of changes for WinPython-64bit 3.12.8.0dot + +The following changes were made to WinPython-64bit distribution since version 3.12.6.0dot. + +
+### Python packages + +Upgraded packages: + + * [build](https://pypi.org/project/build) 1.2.1 → 1.2.2.post1 (A simple, correct Python build frontend) + * [packaging](https://pypi.org/project/packaging) 24.1 → 24.2 (Core utilities for Python packages) + * [pip](https://pypi.org/project/pip) 24.2 → 24.3.1 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.12.6 → 3.12.8 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 72.2.0 → 75.6.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [winpython](https://pypi.org/project/winpython) 10.7.20240908 → 11.2.20241228 (WinPython distribution tools, including WPPM) + +Removed packages: + + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.8.1.md b/changelogs/WinPythondot-64bit-3.12.8.1.md new file mode 100644 index 00000000..4c75f289 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.8.1.md @@ -0,0 +1,28 @@ +## WinPython 3.12.8.1dot + +The following packages are included in WinPython-64bit v3.12.8.1dot b3. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.8 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 11.5.20250126 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.8.1_History.md b/changelogs/WinPythondot-64bit-3.12.8.1_History.md new file mode 100644 index 00000000..4276ca3f --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.8.1_History.md @@ -0,0 +1,14 @@ +## History of changes for WinPython-64bit 3.12.8.1dot + +The following changes were made to WinPython-64bit distribution since version 3.12.8.0dot. + +
+### Python packages + +Upgraded packages: + + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 11.5.20250126 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.12.9.0.md b/changelogs/WinPythondot-64bit-3.12.9.0.md new file mode 100644 index 00000000..7d8615bd --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.9.0.md @@ -0,0 +1,28 @@ +## WinPython 3.12.9.0dot + +The following packages are included in WinPython-64bit v3.12.9.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.9 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 13.1.20250215 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.12.9.0_History.md b/changelogs/WinPythondot-64bit-3.12.9.0_History.md new file mode 100644 index 00000000..4685d221 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.12.9.0_History.md @@ -0,0 +1,16 @@ +## History of changes for WinPython-64bit 3.12.9.0dot + +The following changes were made to WinPython-64bit distribution since version 3.12.8.0dot. + +
+### Python packages + +Upgraded packages: + + * [Python](http://www.python.org/) 3.12.8 → 3.12.9 (Python programming language with standard library) + * [wheel](https://pypi.org/project/wheel) 0.44.0 → 0.45.1 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 13.1.20250215 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.0.0.md b/changelogs/WinPythondot-64bit-3.13.0.0.md index ff256daf..6e46936c 100644 --- a/changelogs/WinPythondot-64bit-3.13.0.0.md +++ b/changelogs/WinPythondot-64bit-3.13.0.0.md @@ -1,6 +1,6 @@ ## WinPython 3.13.0.0dot -The following packages are included in WinPython-64bit v3.13.0.0dot a6. +The following packages are included in WinPython-64bit v3.13.0.0dot b2b.
@@ -15,15 +15,16 @@ Name | Version | Description Name | Version | Description -----|---------|------------ [Python](http://www.python.org/) | 3.13.0 | Python programming language with standard library -[build](https://pypi.org/project/build) | 1.1.1 | A simple, correct Python build frontend +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend [colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. -[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.38.33135 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories -[packaging](https://pypi.org/project/packaging) | 23.2 | Core utilities for Python packages +[interpreters_pep_734](https://pypi.org/project/interpreters_pep_734) | 0.1.0 | Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet. +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages [pip](https://pypi.org/project/pip) | 24.0 | The PyPA recommended tool for installing Python packages. -[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.0.0 | Wrappers to call pyproject.toml-based build backend hooks. -[setuptools](https://pypi.org/project/setuptools) | 69.2.0 | Easily download, build, install, upgrade, and uninstall Python packages -[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.12.2 | a graphic SQLite Client in 1 Python file +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 69.5.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file [wheel](https://pypi.org/project/wheel) | 0.43.0 | A built-package format for Python -[winpython](http://winpython.github.io/) | 7.5.20240410 | WinPython distribution tools, including WPPM +[winpython](http://winpython.github.io/) | 8.2.20240618 | WinPython distribution tools, including WPPM
diff --git a/changelogs/WinPythondot-64bit-3.13.0.1.md b/changelogs/WinPythondot-64bit-3.13.0.1.md new file mode 100644 index 00000000..46bda9b2 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.0.1.md @@ -0,0 +1,30 @@ +## WinPython 3.13.0.1dot + +The following packages are included in WinPython-64bit v3.13.0.1dot rc2. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.0 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[interpreters_pep_734](https://pypi.org/project/interpreters_pep_734) | 0.1.0 | Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet. +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.13.0.1_History.md b/changelogs/WinPythondot-64bit-3.13.0.1_History.md new file mode 100644 index 00000000..78bf8e19 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.0.1_History.md @@ -0,0 +1,17 @@ +## History of changes for WinPython-64bit 3.13.0.1dot + +The following changes were made to WinPython-64bit distribution since version 3.13.0.0dot. + +
+### Python packages + +Upgraded packages: + + * [pip](https://pypi.org/project/pip) 24.0 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [setuptools](https://pypi.org/project/setuptools) 69.5.1 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [wheel](https://pypi.org/project/wheel) 0.43.0 → 0.44.0 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 8.2.20240618 → 10.7.20240908 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.1.0.md b/changelogs/WinPythondot-64bit-3.13.1.0.md new file mode 100644 index 00000000..da971e87 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.1.0.md @@ -0,0 +1,28 @@ +## WinPython 3.13.1.0dot + +The following packages are included in WinPython-64bit v3.13.1.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.1 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 11.2.20241228 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.13.1.0_History.md b/changelogs/WinPythondot-64bit-3.13.1.0_History.md new file mode 100644 index 00000000..a5bdd349 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.1.0_History.md @@ -0,0 +1,24 @@ +## History of changes for WinPython-64bit 3.13.1.0dot + +The following changes were made to WinPython-64bit distribution since version 3.13.0.1dot. + +
+### Python packages + +Upgraded packages: + + * [build](https://pypi.org/project/build) 1.2.1 → 1.2.2.post1 (A simple, correct Python build frontend) + * [packaging](https://pypi.org/project/packaging) 24.1 → 24.2 (Core utilities for Python packages) + * [pip](https://pypi.org/project/pip) 24.2 → 24.3.1 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.13.0 → 3.13.1 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 72.2.0 → 75.6.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [winpython](https://pypi.org/project/winpython) 10.7.20240908 → 11.2.20241228 (WinPython distribution tools, including WPPM) + +Removed packages: + + * [interpreters_pep_734](https://pypi.org/project/interpreters_pep_734) 0.1.0 (Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet.) + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.1.1.md b/changelogs/WinPythondot-64bit-3.13.1.1.md new file mode 100644 index 00000000..b711c0ef --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.1.1.md @@ -0,0 +1,28 @@ +## WinPython 3.13.1.1dot + +The following packages are included in WinPython-64bit v3.13.1.1dot b3. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.1 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 11.5.20250126 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.13.1.1_History.md b/changelogs/WinPythondot-64bit-3.13.1.1_History.md new file mode 100644 index 00000000..32a5992a --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.1.1_History.md @@ -0,0 +1,14 @@ +## History of changes for WinPython-64bit 3.13.1.1dot + +The following changes were made to WinPython-64bit distribution since version 3.13.1.0dot. + +
+### Python packages + +Upgraded packages: + + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 11.5.20250126 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.11.0.md b/changelogs/WinPythondot-64bit-3.13.11.0.md new file mode 100644 index 00000000..be965349 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.11.0.md @@ -0,0 +1,35 @@ +## WinPython 3.13.11.0dot + +The following packages are included in WinPython-64bit v3.13.11.0dot . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.11 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythondot-64bit-3.13.2.0.md b/changelogs/WinPythondot-64bit-3.13.2.0.md new file mode 100644 index 00000000..ccbfa9a8 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.2.0.md @@ -0,0 +1,28 @@ +## WinPython 3.13.2.0dot + +The following packages are included in WinPython-64bit v3.13.2.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.2 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 13.1.20250222 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.13.2.0_History.md b/changelogs/WinPythondot-64bit-3.13.2.0_History.md new file mode 100644 index 00000000..b4bbb942 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.2.0_History.md @@ -0,0 +1,16 @@ +## History of changes for WinPython-64bit 3.13.2.0dot + +The following changes were made to WinPython-64bit distribution since version 3.13.1.1dot. + +
+### Python packages + +Upgraded packages: + + * [Python](http://www.python.org/) 3.13.1 → 3.13.2 (Python programming language with standard library) + * [wheel](https://pypi.org/project/wheel) 0.44.0 → 0.45.1 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 11.5.20250126 → 13.1.20250222 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.3.0.md b/changelogs/WinPythondot-64bit-3.13.3.0.md new file mode 100644 index 00000000..210bbc6d --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.3.0.md @@ -0,0 +1,29 @@ +## WinPython 3.13.3.0dot + +The following packages are included in WinPython-64bit v3.13.3.0dot . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.3 | Python programming language with standard library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.0.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 75.8.2 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 15.3.20250425 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythondot-64bit-3.13.3.0_History.md b/changelogs/WinPythondot-64bit-3.13.3.0_History.md new file mode 100644 index 00000000..105c04ff --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.3.0_History.md @@ -0,0 +1,22 @@ +## History of changes for WinPython-64bit 3.13.3.0dot + +The following changes were made to WinPython-64bit distribution since version 3.13.2.0dot. + +
+ +### Python packages + +New packages: + + * [sv-ttk](https://pypi.org/project/sv-ttk) 2.6.0 (A gorgeous theme for Tkinter, based on Windows 11's UI) + +Upgraded packages: + + * [pip](https://pypi.org/project/pip) 24.3.1 → 25.0.1 (The PyPA recommended tool for installing Python packages.) + * [Python](http://www.python.org/) 3.13.2 → 3.13.3 (Python programming language with standard library) + * [setuptools](https://pypi.org/project/setuptools) 75.6.0 → 75.8.2 (Easily download, build, install, upgrade, and uninstall Python packages) + * [winpython](https://pypi.org/project/winpython) 13.1.20250222 → 15.3.20250425 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythondot-64bit-3.13.5.0.md b/changelogs/WinPythondot-64bit-3.13.5.0.md new file mode 100644 index 00000000..e012294a --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.5.0.md @@ -0,0 +1,36 @@ +## WinPython 3.13.5.0dot + +The following packages are included in WinPython-64bit v3.13.5.0dot 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.5 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythondot-64bit-3.13.5.0_History.md b/changelogs/WinPythondot-64bit-3.13.5.0_History.md new file mode 100644 index 00000000..fb07f130 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.5.0_History.md @@ -0,0 +1,34 @@ +## History of changes for WinPython-64bit 3.13.5.0dot + +The following changes were made to WinPython-64bit distribution since version 3.13.3.0dot. + + +
+ +### Tools + + +New packages: + * Python 3.13.5 (Python programming language with standard library) + +### Python packages + + +Upgraded packages: + * packaging 24.2 → 25.0 (Core utilities for Python packages) + * pip 25.0.1 → 25.1.1 (The PyPA recommended tool for installing Python packages.) + * setuptools 75.8.2 → 79.0.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * winpython 15.3.20250425 → 16.6.20250620 (WinPython distribution tools, including WPPM) + +Removed packages: + * Python 3.13.3 (Python programming language with standard library) + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythondot-64bit-3.13.7.0.md b/changelogs/WinPythondot-64bit-3.13.7.0.md new file mode 100644 index 00000000..be963c93 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.13.7.0.md @@ -0,0 +1,35 @@ +## WinPython 3.13.7.0dot + +The following packages are included in WinPython-64bit v3.13.7.0dot . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.7 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythondot-64bit-3.14.0.0.md b/changelogs/WinPythondot-64bit-3.14.0.0.md new file mode 100644 index 00000000..32acdb7e --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.14.0.0.md @@ -0,0 +1,36 @@ +## WinPython 3.14.0.0dot + +The following packages are included in WinPython-64bit v3.14.0.0dot b3. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.0b3 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythondot-64bit-3.14.0.0_History.md b/changelogs/WinPythondot-64bit-3.14.0.0_History.md new file mode 100644 index 00000000..d692feba --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.14.0.0_History.md @@ -0,0 +1,26 @@ +## History of changes for WinPython-64bit 3.14.0.0dot + +The following changes were made to WinPython-64bit distribution since version 3.13.5.0dot. + + +
+ +### Tools + + +Upgraded packages: + +### Python packages + + +No differences found. + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythondot-64bit-3.14.0.1.md b/changelogs/WinPythondot-64bit-3.14.0.1.md new file mode 100644 index 00000000..2fda9b92 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.14.0.1.md @@ -0,0 +1,35 @@ +## WinPython 3.14.0.1dot + +The following packages are included in WinPython-64bit v3.14.0.1dot . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.0rc3 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythondot-64bit-3.14.2.0.md b/changelogs/WinPythondot-64bit-3.14.2.0.md new file mode 100644 index 00000000..7caff470 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.14.2.0.md @@ -0,0 +1,35 @@ +## WinPython 3.14.2.0dot + +The following packages are included in WinPython-64bit v3.14.2.0dot . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.2 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythondot-64bit-3.15.0.0.md b/changelogs/WinPythondot-64bit-3.15.0.0.md new file mode 100644 index 00000000..16c80ec7 --- /dev/null +++ b/changelogs/WinPythondot-64bit-3.15.0.0.md @@ -0,0 +1,35 @@ +## WinPython 3.15.0.0dot + +The following packages are included in WinPython-64bit v3.15.0.0dot . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.15.0a3 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonfree-64bit-3.13.0.0.md b/changelogs/WinPythonfree-64bit-3.13.0.0.md new file mode 100644 index 00000000..b9bcae3a --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.13.0.0.md @@ -0,0 +1,46 @@ +## WinPython 3.13.0.0free + +The following packages are included in WinPython-64bit v3.13.0.0free b2b. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.0 | Python programming language with standard library +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[interpreters_pep_734](https://pypi.org/project/interpreters_pep_734) | 0.1.0 | Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet. +[ipython](https://pypi.org/project/ipython) | 8.25.0 | IPython: Productive Interactive Computing +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[pip](https://pypi.org/project/pip) | 24.1b1 | The PyPA recommended tool for installing Python packages. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.43 | Library for building powerful interactive command lines in Python +[ptpython](https://pypi.org/project/ptpython) | 3.0.26 | Python REPL build on top of prompt_toolkit +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 69.5.1 | Easily download, build, install, upgrade, and uninstall Python packages +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[wheel](https://pypi.org/project/wheel) | 0.43.0 | A built-package format for Python +[winpython](http://winpython.github.io/) | 8.2.20240618 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythonfree-64bit-3.13.0.0_History.md b/changelogs/WinPythonfree-64bit-3.13.0.0_History.md new file mode 100644 index 00000000..1a4a9ff6 --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.13.0.0_History.md @@ -0,0 +1,8 @@ +## History of changes for WinPython-64bit 3.13.0.0free + +The following changes were made to WinPython-64bit distribution since version 3.13.0.0free. + +
+ +
+* * * diff --git a/changelogs/WinPythonfree-64bit-3.13.0.1.md b/changelogs/WinPythonfree-64bit-3.13.0.1.md new file mode 100644 index 00000000..f9e34344 --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.13.0.1.md @@ -0,0 +1,47 @@ +## WinPython 3.13.0.1free + +The following packages are included in WinPython-64bit v3.13.0.1free rc2. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.0 | Python programming language with standard library +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[cython](https://pypi.org/project/cython) | 3.1.0a0 | The Cython compiler for writing C extensions in the Python language. +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[interpreters_pep_734](https://pypi.org/project/interpreters_pep_734) | 0.1.0 | Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet. +[ipython](https://pypi.org/project/ipython) | 8.26.0 | IPython: Productive Interactive Computing +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.47 | Library for building powerful interactive command lines in Python +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM + +
diff --git a/changelogs/WinPythonfree-64bit-3.13.0.1_History.md b/changelogs/WinPythonfree-64bit-3.13.0.1_History.md new file mode 100644 index 00000000..549ef276 --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.13.0.1_History.md @@ -0,0 +1,24 @@ +## History of changes for WinPython-64bit 3.13.0.1free + +The following changes were made to WinPython-64bit distribution since version 3.13.0.0free. + +
+### Python packages + +New packages: + + * [cython](https://pypi.org/project/cython) 3.1.0a0 (The Cython compiler for writing C extensions in the Python language.) + +Upgraded packages: + + * [ipython](https://pypi.org/project/ipython) 8.25.0 → 8.26.0 (IPython: Productive Interactive Computing) + * [pip](https://pypi.org/project/pip) 24.1b1 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [prompt_toolkit](https://pypi.org/project/prompt_toolkit) 3.0.43 → 3.0.47 (Library for building powerful interactive command lines in Python) + * [ptpython](https://pypi.org/project/ptpython) 3.0.26 → 3.0.29 (Python REPL build on top of prompt_toolkit) + * [setuptools](https://pypi.org/project/setuptools) 69.5.1 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [wheel](https://pypi.org/project/wheel) 0.43.0 → 0.44.0 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 8.2.20240618 → 10.7.20240908 (WinPython distribution tools, including WPPM) + + +
+* * * diff --git a/changelogs/WinPythonfree-64bit-3.14.0.0.md b/changelogs/WinPythonfree-64bit-3.14.0.0.md new file mode 100644 index 00000000..763af9fc --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.14.0.0.md @@ -0,0 +1,36 @@ +## WinPython 3.14.0.0free + +The following packages are included in WinPython-64bit v3.14.0.0free b3. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.0b3 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythonfree-64bit-3.14.0.0_History.md b/changelogs/WinPythonfree-64bit-3.14.0.0_History.md new file mode 100644 index 00000000..e70c94b5 --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.14.0.0_History.md @@ -0,0 +1,58 @@ +## History of changes for WinPython-64bit 3.14.0.0free + +The following changes were made to WinPython-64bit distribution since version 3.13.0.1free. + + +
+ +### Tools + + +New packages: + * Python 3.14.0b3 (Python programming language with standard library) + +### Python packages + + +New packages: + * sv-ttk 2.6.0 (A gorgeous theme for Tkinter, based on Windows 11's UI) + +Upgraded packages: + * build 1.2.1 → 1.2.2.post1 (A simple, correct Python build frontend) + * packaging 24.1 → 25.0 (Core utilities for Python packages) + * pip 24.2 → 25.1.1 (The PyPA recommended tool for installing Python packages.) + * setuptools 72.2.0 → 79.0.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * wheel 0.44.0 → 0.45.1 (A built-package format for Python) + * winpython 10.7.20240908 → 16.6.20250620 (WinPython distribution tools, including WPPM) + +Removed packages: + * Python 3.13.0 (Python programming language with standard library) + * appdirs 1.4.4 (A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir".) + * asttokens 2.4.1 (Annotate AST trees with source code positions) + * cython 3.1.0a0 (The Cython compiler for writing C extensions in the Python language.) + * decorator 5.1.1 (Decorators for Humans) + * executing 2.0.1 (Get the currently executing AST node of a frame, and other information) + * interpreters_pep_734 0.1.0 (Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.13+. Do not use this for anything important yet.) + * ipython 8.26.0 (IPython: Productive Interactive Computing) + * jedi 0.19.1 (An autocompletion tool for Python that can be used for text editors.) + * matplotlib_inline 0.1.7 (Inline Matplotlib backend for Jupyter) + * msvc_runtime 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + * parso 0.8.4 (A Python Parser) + * prompt_toolkit 3.0.47 (Library for building powerful interactive command lines in Python) + * ptpython 3.0.29 (Python REPL build on top of prompt_toolkit) + * pure_eval 0.2.2 (Safely evaluate AST nodes without side effects) + * pygments 2.18.0 (Pygments is a syntax highlighting package written in Python.) + * six 1.16.0 (Python 2 and 3 compatibility utilities) + * stack_data 0.6.3 (Extract data from python stack frames and tracebacks for informative displays) + * traitlets 5.14.1 (Traitlets Python configuration system) + * wcwidth 0.2.13 (Measures the displayed width of unicode strings in a terminal) + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythonfree-64bit-3.14.0.1.md b/changelogs/WinPythonfree-64bit-3.14.0.1.md new file mode 100644 index 00000000..1aff0775 --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.14.0.1.md @@ -0,0 +1,35 @@ +## WinPython 3.14.0.1free + +The following packages are included in WinPython-64bit v3.14.0.1free . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.0rc3 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonfree-64bit-3.14.2.0.md b/changelogs/WinPythonfree-64bit-3.14.2.0.md new file mode 100644 index 00000000..f26434db --- /dev/null +++ b/changelogs/WinPythonfree-64bit-3.14.2.0.md @@ -0,0 +1,35 @@ +## WinPython 3.14.2.0free + +The following packages are included in WinPython-64bit v3.14.2.0free . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.2 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonslim-64bit-3.12.10.0.md b/changelogs/WinPythonslim-64bit-3.12.10.0.md new file mode 100644 index 00000000..a8084d3f --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.10.0.md @@ -0,0 +1,515 @@ +## WinPython 3.12.10.0slim + +The following packages are included in WinPython-64bit v3.12.10.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.10 | Python programming language with standard library +[absl-py](https://pypi.org/project/absl-py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated-types](https://pypi.org/project/annotated-types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.49.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.8.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.11.1 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.4 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.2 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.13.12 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.12 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.3.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.17.0 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.3.9 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.3.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.15 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.2.2 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 36.1.1 | Faker is a Python package that generates fake data for you. +[fast-histogram](https://pypi.org/project/fast-histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.8 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.17.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.10.1 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.10.1 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.5 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.29.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.34.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath-python](https://pypi.org/project/jsonpath-python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.9.2 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.23 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.51 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.24 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.5.3 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.1 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.1 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl-scatter-density](https://pypi.org/project/mpl-scatter-density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.2.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.30.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.0 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.4 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.72.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.14.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.2 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.2.0 | Make your Python code clearer and more reliable by declaring Parameters. +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.0.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.6 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.27.1 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.15.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.50 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 19.0.1 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai](https://pypi.org/project/pydantic-ai) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.0.24 | Graph and state machine library +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.1 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.1 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.1.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.16.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.4 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 2.0.7 | A python library adding a json log formatter +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.9 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.4 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.1 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.8 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.5 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.3.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.2 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.8.2 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.6 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.1 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.5 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.3 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.38 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.45.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.44.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.1 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.13.3 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.0.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.1.10 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.0 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.29.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20241016 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspect](https://pypi.org/project/typing-inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.2.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 15.3.20250425 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.3.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.10.0_History.md b/changelogs/WinPythonslim-64bit-3.12.10.0_History.md new file mode 100644 index 00000000..07147b6d --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.10.0_History.md @@ -0,0 +1,147 @@ +## History of changes for WinPython-64bit 3.12.10.0slim + +The following changes were made to WinPython-64bit distribution since version 3.12.9.0slim. + +
+ +### Tools + +New packages: + + * [Pandoc](https://pandoc.org) 3.1.9 (an universal document converter) + +### Python packages + +New packages: + + * [asyncssh](https://pypi.org/project/asyncssh) 2.20.0 (AsyncSSH: Asynchronous SSHv2 client and server library) + * [deprecated](https://pypi.org/project/deprecated) 1.2.14 (Python @deprecated decorator to deprecate old python classes, functions or methods.) + * [flexcache](https://pypi.org/project/flexcache) 0.3 (Saves and loads to the cache a transformed versions of a source object.) + * [flexparser](https://pypi.org/project/flexparser) 0.4 (Parsing made fun ... using typing.) + * [id](https://pypi.org/project/id) 1.5.0 (A tool for generating OIDC identities) + * [pygithub](https://pypi.org/project/pygithub) 2.6.1 (Use the full Github API v3) + * [pyuca](https://pypi.org/project/pyuca) 1.2 (a Python implementation of the Unicode Collation Algorithm) + * [shellingham](https://pypi.org/project/shellingham) 1.5.4 (Tool to Detect Surrounding Shell) + * [skrub](https://pypi.org/project/skrub) 0.5.1 (Prepping tables for machine learning) + * [superqt](https://pypi.org/project/superqt) 0.7.1 (Missing widgets and components for PyQt/PySide) + * [sv-ttk](https://pypi.org/project/sv-ttk) 2.6.0 (A gorgeous theme for Tkinter, based on Windows 11's UI) + * [typer](https://pypi.org/project/typer) 0.15.2 (Typer, build great CLIs. Easy to code. Based on Python type hints.) + * [wrapt](https://pypi.org/project/wrapt) 1.16.0 (Module for decorators, wrappers and monkey patching.) + +Upgraded packages: + + * [alembic](https://pypi.org/project/alembic) 1.13.1 → 1.15.1 (A database migration tool for SQLAlchemy.) + * [anthropic](https://pypi.org/project/anthropic) 0.42.0 → 0.49.0 (The official Python library for the anthropic API) + * [anyio](https://pypi.org/project/anyio) 4.7.0 → 4.8.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * [array-api-compat](https://pypi.org/project/array-api-compat) 1.10.0 → 1.11.1 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [azure-core](https://pypi.org/project/azure-core) 1.30.2 → 1.32.0 (Microsoft Azure Core Library for Python) + * [azure-cosmos](https://pypi.org/project/azure-cosmos) 4.7.0 → 4.9.0 (Microsoft Azure Cosmos Client Library for Python) + * [azure-identity](https://pypi.org/project/azure-identity) 1.16.1 → 1.21.0 (Microsoft Azure Identity Library for Python) + * [black](https://pypi.org/project/black) 24.10.0 → 25.1.0 (The uncompromising code formatter.) + * [bokeh](https://pypi.org/project/bokeh) 3.6.3 → 3.7.2 (Interactive plots and applications in the browser from Python) + * [cachetools](https://pypi.org/project/cachetools) 5.4.0 → 5.5.2 (Extensible memoizing collections and decorators) + * [certifi](https://pypi.org/project/certifi) 2024.6.2 → 2025.1.31 (Python package for providing Mozilla's CA Bundle.) + * [click](https://pypi.org/project/click) 8.1.7 → 8.1.8 (Composable command line interface toolkit) + * [cloudpickle](https://pypi.org/project/cloudpickle) 3.0.0 → 3.1.1 (Pickler class to extend the standard pickle.Pickler functionality) + * [cvxpy](https://pypi.org/project/cvxpy) 1.6.0 → 1.6.4 (A domain-specific language for modeling convex optimization problems in Python.) + * [cython](https://pypi.org/project/cython) 3.0.11 → 3.0.12 (The Cython compiler for writing C extensions in the Python language.) + * [dask](https://pypi.org/project/dask) 2024.12.1 → 2025.3.0 (Parallel PyData with Task Scheduling) + * [datasette](https://pypi.org/project/datasette) 0.64.8 → 0.65.1 (An open source multi-tool for exploring and publishing data) + * [datashader](https://pypi.org/project/datashader) 0.16.3 → 0.17.0 (Data visualization toolchain based on aggregating into a grid) + * [diff-match-patch](https://pypi.org/project/diff-match-patch) 20230430 → 20241021 (Repackaging of Google's Diff Match and Patch libraries.) + * [distributed](https://pypi.org/project/distributed) 2024.12.1 → 2025.3.0 (Distributed scheduler for Dask) + * [docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) 0.13 → 0.15 (On the fly conversion of Python docstrings to markdown) + * [duckdb](https://pypi.org/project/duckdb) 1.2.0 → 1.2.2 (DuckDB in-process database) + * [faker](https://pypi.org/project/faker) 33.3.1 → 36.1.1 (Faker is a Python package that generates fake data for you.) + * [fastapi](https://pypi.org/project/fastapi) 0.115.6 → 0.115.8 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [filelock](https://pypi.org/project/filelock) 3.14.0 → 3.17.0 (A platform independent file lock.) + * [folium](https://pypi.org/project/folium) 0.18.0 → 0.19.5 (Make beautiful maps with Leaflet.js & Python) + * [holoviews](https://pypi.org/project/holoviews) 1.20.0 → 1.20.2 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [hpack](https://pypi.org/project/hpack) 4.0.0 → 4.1.0 (Pure-Python HPACK header encoding) + * [huggingface-hub](https://pypi.org/project/huggingface-hub) 0.28.1 → 0.29.3 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypercorn](https://pypi.org/project/hypercorn) 0.16.0 → 0.17.3 (A ASGI Server based on Hyper libraries and inspired by Gunicorn) + * [hyperframe](https://pypi.org/project/hyperframe) 6.0.1 → 6.1.0 (Pure-Python HTTP/2 framing) + * [hypothesis](https://pypi.org/project/hypothesis) 6.122.3 → 6.130.4 (A library for property-based testing) + * [idna](https://pypi.org/project/idna) 3.7 → 3.10 (Internationalized Domain Names in Applications (IDNA)) + * [imageio](https://pypi.org/project/imageio) 2.33.1 → 2.37.0 (Library for reading and writing a wide range of image, video, scientific, and volumetric data formats.) + * [importlib-metadata](https://pypi.org/project/importlib-metadata) 7.1.0 → 8.6.1 (Read metadata from Python packages) + * [ipympl](https://pypi.org/project/ipympl) 0.9.6 → 0.9.7 (Matplotlib Jupyter Extension) + * [ipython](https://pypi.org/project/ipython) 8.32.0 → 8.34.0 (IPython: Productive Interactive Computing) + * [ipywidgets](https://pypi.org/project/ipywidgets) 8.1.5 → 8.1.6 (Jupyter interactive widgets) + * [jupyter-client](https://pypi.org/project/jupyter-client) 8.6.2 → 8.6.3 (Jupyter protocol implementation and client libraries) + * [jupyter-events](https://pypi.org/project/jupyter-events) 0.10.0 → 0.12.0 (Jupyter Event System library) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.3.5 → 4.4.1 (JupyterLab computational environment) + * [jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) 3.0.13 → 3.0.14 (Jupyter interactive widgets for JupyterLab) + * [keras](https://pypi.org/project/keras) 3.8.0 → 3.9.2 (Multi-backend Keras) + * [langchain](https://pypi.org/project/langchain) 0.3.18 → 0.3.23 (Building applications with LLMs through composability) + * [langchain-core](https://pypi.org/project/langchain-core) 0.3.34 → 0.3.51 (Building applications with LLMs through composability) + * [langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) 0.3.6 → 0.3.8 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.2.11 → 0.3.24 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [markdown](https://pypi.org/project/markdown) 3.5.1 → 3.7 (Python implementation of John Gruber's Markdown.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.10.0 → 3.10.1 (Python plotting package) + * [mypy](https://pypi.org/project/mypy) 1.14.0 → 1.15.0 (Optional static typing for Python) + * [mysql-connector-python](https://pypi.org/project/mysql-connector-python) 8.0.21 → 9.2.0 (A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v) + * [narwhals](https://pypi.org/project/narwhals) 1.21.1 → 1.30.0 (Extremely lightweight compatibility layer between dataframe libraries) + * [notebook](https://pypi.org/project/notebook) 7.3.1 → 7.4.0 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * [numba](https://pypi.org/project/numba) 0.61.0 → 0.61.2 (compiling Python code using LLVM) + * [numpy](https://pypi.org/project/numpy) 2.1.3 → 2.2.4 (Fundamental package for array computing in Python) + * [openai](https://pypi.org/project/openai) 1.61.1 → 1.72.0 (The official Python library for the openai API) + * [opencv-python](https://pypi.org/project/opencv-python) 4.10.0.84 → 4.11.0.86 (Wrapper package for OpenCV python bindings.) + * [optree](https://pypi.org/project/optree) 0.13.1 → 0.14.0 (Optimized PyTree Utilities.) + * [panel](https://pypi.org/project/panel) 1.6.0 → 1.6.2 (The powerful data exploration & web app framework for Python.) + * [param](https://pypi.org/project/param) 2.1.1 → 2.2.0 (Make your Python code clearer and more reliable by declaring Parameters.) + * [pip](https://pypi.org/project/pip) 24.3.1 → 25.0.1 (The PyPA recommended tool for installing Python packages.) + * [platformdirs](https://pypi.org/project/platformdirs) 4.2.2 → 4.3.6 (A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.) + * [plotly](https://pypi.org/project/plotly) 5.24.1 → 6.0.1 (An open-source interactive data visualization library for Python) + * [polars](https://pypi.org/project/polars) 1.22.0 → 1.27.1 (Blazingly fast DataFrame library) + * [prometheus-client](https://pypi.org/project/prometheus-client) 0.18.0 → 0.21.1 (Python client for the Prometheus monitoring system.) + * [prompt-toolkit](https://pypi.org/project/prompt-toolkit) 3.0.48 → 3.0.50 (Library for building powerful interactive command lines in Python) + * [pyarrow](https://pypi.org/project/pyarrow) 19.0.0 → 19.0.1 (Python library for Apache Arrow) + * [pyasn1](https://pypi.org/project/pyasn1) 0.4.8 → 0.6.1 (Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)) + * [pyasn1-modules](https://pypi.org/project/pyasn1-modules) 0.2.8 → 0.4.1 (A collection of ASN.1-based protocols modules) + * [pyjwt](https://pypi.org/project/pyjwt) 2.8.0 → 2.10.1 (JSON Web Token implementation in Python) + * [pympler](https://pypi.org/project/pympler) 1.0.1 → 1.1 (A development tool to measure, monitor and analyze the memory behavior of Python objects.) + * [pyomo](https://pypi.org/project/pyomo) 6.8.2 → 6.9.1 (Pyomo: Python Optimization Modeling Objects) + * [pypandoc](https://pypi.org/project/pypandoc) 1.5 → 1.15 (Thin wrapper for pandoc.) + * [pytest](https://pypi.org/project/pytest) 8.2.2 → 8.3.4 (pytest: simple powerful testing with Python) + * [Python](http://www.python.org/) 3.12.9 → 3.12.10 (Python programming language with standard library) + * [pytz](https://pypi.org/project/pytz) 2024.1 → 2024.2 (World timezone definitions, modern and historical) + * [pyzmq](https://pypi.org/project/pyzmq) 26.2.0 → 26.2.1 (Python bindings for 0MQ) + * [qtawesome](https://pypi.org/project/qtawesome) 1.3.1 → 1.4.0 (FontAwesome icons in PyQt and PySide applications) + * [qtconsole](https://pypi.org/project/qtconsole) 5.5.2 → 5.6.1 (Jupyter Qt console) + * [quart](https://pypi.org/project/quart) 0.19.4 → 0.20.0 (A Python ASGI web framework with the same API as Flask) + * [rtree](https://pypi.org/project/rtree) 1.1.0 → 1.3.0 (R-Tree spatial index for Python GIS) + * [rx](https://pypi.org/project/rx) 3.1.1 → 3.2.0 (Reactive Extensions (Rx) for Python) + * [scikit-image](https://pypi.org/project/scikit-image) 0.25.0 → 0.25.2 (Image processing in Python) + * [scipy](https://pypi.org/project/scipy) 1.15.1 → 1.15.2 (Fundamental algorithms for scientific computing in Python) + * [send2trash](https://pypi.org/project/send2trash) 1.8.2 → 1.8.3 (Send file to trash natively under Mac OS X, Windows and Linux) + * [setuptools](https://pypi.org/project/setuptools) 75.6.0 → 75.8.2 (Easily download, build, install, upgrade, and uninstall Python packages) + * [simpy](https://pypi.org/project/simpy) 4.0.1 → 4.1.1 (Event discrete, process based simulation for Python.) + * [spyder](https://pypi.org/project/spyder) 5.5.6 → 6.0.5 (The Scientific Python Development Environment) + * [spyder-kernels](https://pypi.org/project/spyder-kernels) 2.5.2 → 3.0.3 (Jupyter kernels for Spyder's console) + * [sqlalchemy](https://pypi.org/project/sqlalchemy) 2.0.35 → 2.0.38 (Database Abstraction Library) + * [starlette](https://pypi.org/project/starlette) 0.41.3 → 0.45.3 (The little ASGI library that shines.) + * [streamlit](https://pypi.org/project/streamlit) 1.41.1 → 1.44.0 (A faster way to build and share data apps) + * [tomli-w](https://pypi.org/project/tomli-w) 1.1.0 → 1.2.0 (A lil' TOML writer) + * [trio](https://pypi.org/project/trio) 0.28.0 → 0.29.0 (A friendly Python library for async concurrency and I/O) + * [twine](https://pypi.org/project/twine) 6.0.1 → 6.1.0 (Collection of utilities for publishing packages on PyPI) + * [widgetsnbextension](https://pypi.org/project/widgetsnbextension) 4.0.13 → 4.0.14 (Jupyter interactive widgets for Jupyter Notebook) + * [winpython](https://pypi.org/project/winpython) 13.1.20250222 → 15.3.20250425 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2025.1.1 → 2025.3.0 (N-D labeled arrays and datasets in Python) + * [yt-dlp](https://pypi.org/project/yt-dlp) 2023.7.6 → 2025.2.19 (A feature-rich command-line audio/video downloader) + +Removed packages: + + * [bcrypt](https://pypi.org/project/bcrypt) 4.0.1 (Modern password hashing for your software and your servers) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.21 (High Level Expressions for Dask ) + * [mutagen](https://pypi.org/project/mutagen) 1.47.0 (read and write audio tags for many formats) + * [paramiko](https://pypi.org/project/paramiko) 2.8.0 (SSH2 protocol library) + * [pint](https://pypi.org/project/pint) 0.23 (Physical quantities module) + * [pkginfo](https://pypi.org/project/pkginfo) 1.11.2 (Query metadata from sdists / bdists / installed packages.) + * [pycryptodomex](https://pypi.org/project/pycryptodomex) 3.20.0 (Cryptographic library for Python) + * [streamz](https://pypi.org/project/streamz) 0.6.3 (Streams) + * [websockets](https://pypi.org/project/websockets) 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.12.10.1.md b/changelogs/WinPythonslim-64bit-3.12.10.1.md new file mode 100644 index 00000000..7c78fc18 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.10.1.md @@ -0,0 +1,528 @@ +## WinPython 3.12.10.1slim + +The following packages are included in WinPython-64bit v3.12.10.1slim 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.12.10 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.2.2 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.51.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.9.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.3 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.15.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.1 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.4.1 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.17.0 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.13 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.4.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.3.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.1.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.115.12 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.18.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.57.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.3.2 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.38.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.16.1 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.2 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.25.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.9.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.7 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.33.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.36.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.9.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.10.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.23.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2024.10.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.15.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.2 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.10.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.25 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.59 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.42 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.9 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.3 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.9.3 | Model Context Protocol SDK +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.4.2 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.8.1 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.6.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.4.3 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.2.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.36.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.2 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.6 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.82.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.32.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.16 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.3 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.2.0 | Make your Python code clearer and more reliable by declaring Parameters. +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.4 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.31.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.51 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.30.2 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.12.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 20.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.4.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.5 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.4 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.4.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.3.1 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.24.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.0 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.3 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.1.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.7 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.40 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 2.2.1 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.46.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.46.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.3 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.30.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.4.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.3 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.10.1_History.md b/changelogs/WinPythonslim-64bit-3.12.10.1_History.md new file mode 100644 index 00000000..27c73ef0 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.10.1_History.md @@ -0,0 +1,201 @@ +## History of changes for WinPython-64bit 3.12.10.1slim + +The following changes were made to WinPython-64bit distribution since version 3.12.10.0slim. + + +
+ +### Tools + + +New packages: + * Python 3.12.10 (Python programming language with standard library) + +### Python packages + + +New packages: + * argcomplete 3.6.2 (Bash tab completion for argparse) + * bcrypt 4.3.0 (Modern password hashing for your software and your servers) + * fasta2a 0.2.9 (Convert an AI Agent into a A2A server! ✨) + * google-genai 1.16.1 (GenAI Python SDK) + * mcp 1.9.3 (Model Context Protocol SDK) + * opentelemetry-api 1.32.1 (OpenTelemetry Python API) + * pydantic-evals 0.2.9 (Framework for evaluating stochastic code execution, especially code making use of LLMs) + * pydantic-settings 2.8.1 (Settings management using Pydantic) + * sse-starlette 2.2.1 (SSE plugin for Starlette) + * typing-inspection 0.4.0 (Runtime typing introspection tools) + * websockets 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + +Upgraded packages: + * aiohappyeyeballs 2.4.4 → 2.6.1 (Happy Eyeballs for asyncio) + * aiohttp 3.11.11 → 3.11.18 (Async http client/server framework (asyncio)) + * aiosignal 1.3.1 → 1.3.2 (aiosignal: a list of registered asynchronous callbacks) + * alembic 1.15.1 → 1.15.2 (A database migration tool for SQLAlchemy.) + * anthropic 0.49.0 → 0.51.0 (The official Python library for the anthropic API) + * anyio 4.8.0 → 4.9.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * anywidget 0.9.12 → 0.9.18 (custom jupyter widgets made easy) + * asteval 0.9.31 → 1.0.5 (Safe, minimalistic evaluator of python expression using ast module) + * astroid 3.1.0 → 3.3.9 (An abstract syntax tree for Python with inference support.) + * asttokens 2.4.1 → 3.0.0 (Annotate AST trees with source code positions) + * attrs 23.2.0 → 25.3.0 (Classes Without Boilerplate) + * babel 2.16.0 → 2.17.0 (Internationalization utilities) + * beautifulsoup4 4.12.2 → 4.13.3 (Screen-scraping library) + * bleach 6.1.0 → 6.2.0 (An easy safelist-based HTML-sanitizing tool.) + * bokeh 3.7.2 → 3.7.3 (Interactive plots and applications in the browser from Python) + * branca 0.8.0 → 0.8.1 (Generate complex HTML+JS pages with Python) + * cohere 5.13.12 → 5.15.0 () + * colorlog 6.8.2 → 6.9.0 (Add colours to the output of Python's logging module.) + * contourpy 1.3.1 → 1.3.2 (Python library for calculating contours of 2D quadrilateral grids) + * cython 3.0.12 → 3.1.1 (The Cython compiler for writing C extensions in the Python language.) + * dask 2025.3.0 → 2025.4.1 (Parallel PyData with Task Scheduling) + * debugpy 1.8.0 → 1.8.13 (An implementation of the Debug Adapter Protocol for Python) + * decorator 5.1.1 → 5.2.1 (Decorators for Humans) + * dill 0.3.9 → 0.4.0 (serialize all of Python) + * distributed 2025.3.0 → 2025.4.1 (Distributed scheduler for Dask) + * distro 1.8.0 → 1.9.0 (Distro - an OS platform information API) + * django 5.0.7 → 5.2 (A high-level Python web framework that encourages rapid development and clean, pragmatic design.) + * dnspython 2.6.1 → 2.7.0 (DNS toolkit) + * duckdb 1.2.2 → 1.3.0 (DuckDB in-process database) + * executing 2.0.1 → 2.2.0 (Get the currently executing AST node of a frame, and other information) + * faker 36.1.1 → 37.1.0 (Faker is a Python package that generates fake data for you.) + * fastapi 0.115.8 → 0.115.12 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * fastjsonschema 2.18.0 → 2.21.1 (Fastest Python implementation of JSON schema) + * filelock 3.17.0 → 3.18.0 (A platform independent file lock.) + * flit 3.10.1 → 3.12.0 (A simple packaging tool for simple packages.) + * fonttools 4.55.3 → 4.57.0 (Tools to manipulate font files) + * fsspec 2024.6.1 → 2025.3.2 (File-system specification) + * gitdb 4.0.10 → 4.0.12 (Git Object Database) + * gitpython 3.1.32 → 3.1.44 (GitPython is a Python library used to interact with Git repositories) + * graphene 3.3 → 3.4.3 (GraphQL Framework for Python) + * griffe 1.5.5 → 1.7.2 (Signatures for entire Python programs.) + * groq 0.13.1 → 0.25.0 (The official Python library for the groq API) + * guidata 3.7.1 → 3.9.0 (Automatic GUI generation for easy dataset editing and display) + * h2 4.1.0 → 4.2.0 (Pure-Python HTTP/2 protocol implementation) + * httpcore 1.0.5 → 1.0.7 (A minimal low-level HTTP client.) + * httpx 0.27.2 → 0.28.1 (The next generation HTTP client.) + * hupper 1.12 → 1.12.1 (Integrated process monitor for developing and reloading daemons.) + * iniconfig 2.0.0 → 2.1.0 (brain-dead simple config-ini parsing) + * intervaltree 3.0.2 → 3.1.0 (Editable interval tree data structure for Python 2 and 3) + * ipython 8.34.0 → 8.36.0 (IPython: Productive Interactive Computing) + * jinja2 3.1.2 → 3.1.6 (A very fast and expressive template engine.) + * jiter 0.8.2 → 0.9.0 (Fast iterable JSON parser.) + * json5 0.9.14 → 0.10.0 (A Python implementation of the JSON5 data format.) + * jsonpointer 2.4 → 3.0.0 (Identify specific nodes in a JSON document (RFC 6901)) + * jsonschema 4.19.2 → 4.23.0 (An implementation of JSON Schema validation for Python) + * jupyterlab 4.4.1 → 4.4.2 (JupyterLab computational environment) + * keras 3.9.2 → 3.10.0 (Multi-backend Keras) + * langchain 0.3.23 → 0.3.25 (Building applications with LLMs through composability) + * langsmith 0.3.24 → 0.3.42 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * lmfit 1.3.1 → 1.3.3 (Least-Squares Minimization with Bounds and Constraints) + * mako 1.3.5 → 1.3.9 (A super-fast templating language that borrows the best ideas from the existing templating languages.) + * matplotlib 3.10.1 → 3.10.3 (Python plotting package) + * maturin 1.8.1 → 1.8.3 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * missingno 0.5.1 → 0.5.2 (Missing data visualization module for Python.) + * mistralai 1.2.5 → 1.8.1 (Python Client SDK for the Mistral AI API.) + * mistune 2.0.5 → 3.1.3 (A sane and fast Markdown parser with useful plugins and renderers) + * mpld3 0.5.8 → 0.5.10 (D3 Viewer for Matplotlib) + * multidict 6.1.0 → 6.4.3 (multidict implementation) + * narwhals 1.30.0 → 1.36.0 (Extremely lightweight compatibility layer between dataframe libraries) + * nbclient 0.10.0 → 0.10.2 (A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor.) + * nbconvert 7.16.1 → 7.16.6 (Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script.) + * notebook 7.4.0 → 7.4.2 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * numpy 2.2.4 → 2.2.6 (Fundamental package for array computing in Python) + * numpydoc 1.6.0 → 1.8.0 (Sphinx extension to support docstrings in Numpy format) + * openai 1.72.0 → 1.82.0 (The official Python library for the openai API) + * openpyxl 3.1.2 → 3.1.5 (A Python library to read/write Excel 2010 xlsx/xlsm files) + * optree 0.14.0 → 0.14.1 (Optimized PyTree Utilities.) + * optuna 3.6.1 → 4.2.1 (A hyperparameter optimization framework) + * orjson 3.10.12 → 3.10.16 (Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy) + * pandocfilters 1.5.0 → 1.5.1 (Utilities for writing pandoc filters in python) + * panel 1.6.2 → 1.6.3 (The powerful data exploration & web app framework for Python.) + * partd 1.4.0 → 1.4.2 (Appendable key-value storage) + * pathspec 0.11.0 → 0.12.1 (Utility library for gitignore style pattern matching of file paths.) + * patsy 0.5.6 → 1.0.1 (A Python package for describing statistical models and for building design matrices.) + * pexpect 4.8.0 → 4.9.0 (Pexpect allows easy control of interactive console applications.) + * pg8000 1.23.0 → 1.31.2 (PostgreSQL interface library) + * pip 25.0.1 → 25.1.1 (The PyPA recommended tool for installing Python packages.) + * platformdirs 4.3.6 → 4.3.7 (A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.) + * plotpy 2.7.2 → 2.7.4 (Curve and image plotting tools for Python/Qt applications) + * polars 1.27.1 → 1.31.0 (Blazingly fast DataFrame library) + * prettytable 3.3.0 → 3.16.0 (A simple Python library for easily displaying tabular data in a visually appealing ASCII table format) + * prince 0.15.0 → 0.16.0 (Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA) + * propcache 0.2.1 → 0.3.1 (Accelerated property cache) + * protobuf 5.27.3 → 6.30.2 () + * psutil 5.9.8 → 7.0.0 (Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7.) + * psygnal 0.11.1 → 0.12.0 (Fast python callback/event system modeled after Qt Signals) + * pyarrow 19.0.1 → 20.0.0 (Python library for Apache Arrow) + * pyerfa 2.0.1.4 → 2.0.1.5 (Python bindings for ERFA) + * pylint 3.1.0 → 3.3.6 (python code static checker) + * pynndescent 0.5.12 → 0.5.13 (Nearest Neighbor Descent) + * pyomo 6.9.1 → 6.9.2 (Pyomo: Python Optimization Modeling Objects) + * pyparsing 3.2.1 → 3.2.3 (pyparsing module - Classes and methods to define and execute parsing grammars) + * pypdf 5.1.0 → 5.4.0 (A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files) + * pyqt5 5.15.10 → 5.15.11 (Python bindings for the Qt cross platform application toolkit) + * pyqtwebengine 5.15.6 → 5.15.7 (Python bindings for the Qt WebEngine framework) + * pytest 8.3.4 → 8.3.5 (pytest: simple powerful testing with Python) + * pythonqwt 0.14.4 → 0.14.5 (Qt plotting widgets for Python) + * pytz 2024.2 → 2025.2 (World timezone definitions, modern and historical) + * pywin32 308 → 310 (Python for Window Extensions) + * pywinpty 2.0.14 → 2.0.15 (Pseudo terminal support for Windows from Python.) + * pyzmq 26.2.1 → 26.4.0 (Python bindings for 0MQ) + * qstylizer 0.2.2 → 0.2.4 (Stylesheet Generator for PyQt{4-5}/PySide{1-2}) + * qtpy 2.4.1 → 2.4.3 (Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6).) + * rapidfuzz 3.9.6 → 3.13.0 (rapid fuzzy string matching) + * redis 5.0.8 → 5.2.1 (Python client for Redis database and key-value store) + * referencing 0.35.1 → 0.36.2 (JSON Referencing + Python) + * reportlab 4.2.5 → 4.3.1 (The Reportlab Toolkit) + * rich 13.9.4 → 14.0.0 (Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal) + * rope 1.12.0 → 1.13.0 (a python refactoring library...) + * rtree 1.3.0 → 1.4.0 (R-Tree spatial index for Python GIS) + * scipy 1.15.2 → 1.15.3 (Fundamental algorithms for scientific computing in Python) + * setuptools 75.8.2 → 79.0.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * shapely 2.0.6 → 2.1.0 (Manipulation and analysis of geometric objects) + * six 1.16.0 → 1.17.0 (Python 2 and 3 compatibility utilities) + * skrub 0.5.1 → 0.5.3 (Prepping tables for machine learning) + * smmap 5.0.0 → 5.0.2 (A pure Python implementation of a sliding window memory map manager) + * sniffio 1.3.0 → 1.3.1 (Sniff out which async library your code is running under) + * sphinx 7.3.7 → 8.1.3 (Python documentation generator) + * spyder 6.0.5 → 6.0.7 (The Scientific Python Development Environment) + * sqlalchemy 2.0.38 → 2.0.40 (Database Abstraction Library) + * starlette 0.45.3 → 0.46.2 (The little ASGI library that shines.) + * streamlit 1.44.0 → 1.46.0 (A faster way to build and share data apps) + * superqt 0.7.1 → 0.7.3 (Missing widgets and components for PyQt/PySide) + * sympy 1.13.3 → 1.14.0 (Computer algebra system (CAS) in Python) + * tblib 3.0.0 → 3.1.0 (Traceback serialization library.) + * tenacity 9.0.0 → 9.1.2 (Retry code until it succeeds) + * termcolor 2.5.0 → 3.1.0 (ANSI color formatting for output in terminal) + * threadpoolctl 3.5.0 → 3.6.0 (threadpoolctl) + * tifffile 2025.1.10 → 2025.3.30 (Read and write TIFF files) + * tiktoken 0.8.0 → 0.9.0 (tiktoken is a fast BPE tokeniser for use with OpenAI's models) + * tokenizers 0.21.0 → 0.21.1 () + * tornado 6.4.2 → 6.5.1 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * tqdm 4.66.4 → 4.67.1 (Fast, Extensible Progress Meter) + * traitlets 5.14.1 → 5.14.3 (Traitlets Python configuration system) + * trio 0.29.0 → 0.30.0 (A friendly Python library for async concurrency and I/O) + * tzdata 2024.1 → 2025.2 (Provider of IANA time zone data) + * tzlocal 5.2 → 5.3.1 (tzinfo object for the local timezone) + * urllib3 2.2.3 → 2.4.0 (HTTP library with thread-safe connection pooling, file post, and more.) + * uvicorn 0.34.0 → 0.34.2 (The lightning-fast ASGI server.) + * winpython 15.3.20250425 → 16.6.20250620 (WinPython distribution tools, including WPPM) + * xarray 2025.3.0 → 2025.4.0 (N-D labeled arrays and datasets in Python) + * xlsxwriter 3.1.9 → 3.2.3 (A Python module for creating Excel XLSX files.) + +Removed packages: + * Python 3.12.10 (Python programming language with standard library) + * aniso8601 9.0.1 (A library for parsing ISO 8601 strings.) + * fast-histogram 0.14 (Fast simple 1D and 2D histograms) + * jsonpath-python 1.0.6 (A more powerful JSONPath implementation in modern python) + * mpl-scatter-density 0.7 (Matplotlib helpers to make density scatter plots) + * pydantic-ai 0.0.24 (Agent Framework / shim to use Pydantic with LLMs) + * typing-inspect 0.9.0 (Runtime inspection utilities for typing module.) + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythonslim-64bit-3.12.6.0.md b/changelogs/WinPythonslim-64bit-3.12.6.0.md new file mode 100644 index 00000000..b770c938 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.6.0.md @@ -0,0 +1,528 @@ +## WinPython 3.12.6.0slim + +The following packages are included in WinPython-64bit v3.12.6.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org/) | 3.1.9 | a universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.6 | Python programming language with standard library +[about_time](https://pypi.org/project/about_time) | 4.2.1 | Easily measure timing and throughput of code blocks, with beautiful human friendly representations. +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 0.11.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[affine](https://pypi.org/project/affine) | 2.3.1 | Matrices describing affine transformation of the plane. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohttp](https://pypi.org/project/aiohttp) | 3.9.5 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[alive_progress](https://pypi.org/project/alive_progress) | 3.1.5 | A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations! +[altair](https://pypi.org/project/altair) | 5.4.1 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anyio](https://pypi.org/project/anyio) | 4.4.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.8 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.0 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.4.29.0.28.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autograd](https://pypi.org/project/autograd) | 1.6.2 | Efficiently computes derivatives of numpy code. +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.15.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.8.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.5.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.7.2 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.3.3 | Extensible memoizing collections and decorators +[cartopy](https://pypi.org/project/cartopy) | 0.23.0 | A Python library for cartographic visualizations with Matplotlib +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.16.0 | Foreign Function Interface for Python calling C code. +[cftime](https://pypi.org/project/cftime) | 1.6.3 | Time-handling functionality from netcdf4-python +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.3.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[click_plugins](https://pypi.org/project/click_plugins) | 1.1.1 | An extension module for click to enable registering CLI commands via setuptools entry-points. +[cligj](https://pypi.org/project/cligj) | 0.7.2 | Click params for commmand line interfaces to GeoJSON +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[clr_loader](https://pypi.org/project/clr_loader) | 0.2.6 | Generic pure Python loader for .NET runtimes +[clrmagic](https://pypi.org/project/clrmagic) | 0.0.1a2 | IPython cell magic to use .NET languages +[cma](https://pypi.org/project/cma) | 3.2.2 | CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.2.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 41.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.5.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 0.12.3 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.7.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.9 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[deap](https://pypi.org/project/deap) | 1.4.1 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.13 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[dirty_cat](https://pypi.org/project/dirty_cat) | 0.4.1 | Machine learning with dirty categories. +[distributed](https://pypi.org/project/distributed) | 2024.7.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.0.0 | DuckDB in-process database +[ecos](https://pypi.org/project/ecos) | 2.0.13 | This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information. +[email_validator](https://pypi.org/project/email_validator) | 2.2.0 | A robust email address syntax and deliverability validation library. +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.111.1 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastapi_cli](https://pypi.org/project/fastapi_cli) | 0.0.4 | Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀 +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[fiona](https://pypi.org/project/fiona) | 1.9.5 | Fiona reads and writes spatial data files +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.17.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.51.0 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.4.1 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 0.14.4 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[grapheme](https://pypi.org/project/grapheme) | 0.6.0 | Unicode grapheme helpers +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.0.3 | Lightweight in-process concurrent programming +[guidata](https://pypi.org/project/guidata) | 3.6.2 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.10.0 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.25.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.19.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.3 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httptools](https://pypi.org/project/httptools) | 0.6.1 | A collection of framework independent HTTP protocol utils. +[httpx](https://pypi.org/project/httpx) | 0.27.0 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.24.5 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.10.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.108.5 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.12.3 | Toolbox for imbalanced dataset in machine learning. +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.26.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 1.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 5.3.0 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.0.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.0.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.5.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.0.0 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.2.5 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.5.0 | Multi-backend Keras. +[keyring](https://pypi.org/project/keyring) | 25.2.1 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.5 | A fast implementation of the Cassowary constraint solver +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.43.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[lxml](https://pypi.org/project/lxml) | 5.2.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.9.2 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.7.0 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.4.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.22.0 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[msvc_runtime](https://pypi.org/project/msvc_runtime) | 14.40.33807 | Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories +[multidict](https://pypi.org/project/multidict) | 6.0.5 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.11.1 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.5.5 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[netcdf4](https://pypi.org/project/netcdf4) | 1.7.1.post2 | Provides an object-oriented python interface to the netCDF version 4 library +[networkx](https://pypi.org/project/networkx) | 3.3 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.8.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.2.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[ntlm_auth](https://pypi.org/project/ntlm_auth) | 1.5.0 | Creates NTLM authentication structures +[numba](https://pypi.org/project/numba) | 0.60.0 | compiling Python code using LLVM +[numexpr](https://pypi.org/project/numexpr) | 2.10.1 | Fast numerical expression evaluator for NumPy +[numpy](https://pypi.org/project/numpy) | 2.0.1 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.42.0 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.11.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.9.15 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.1 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.2 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.5.0b4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 10.4.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.2 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.9.6 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.23.0 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.6.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[pmdarima](https://pypi.org/project/pmdarima) | 2.0.4 | Python's forecast::auto.arima equivalent +[polars](https://pypi.org/project/polars) | 1.6.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.47 | Library for building powerful interactive command lines in Python +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pulp](https://pypi.org/project/pulp) | 2.6.0 | PuLP is an LP modeler written in python +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 17.0.0 | Python library for Apache Arrow +[pyaudio](https://pypi.org/project/pyaudio) | 0.2.14 | Cross-platform audio I/O with PortAudio +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.13.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycosat](https://pypi.org/project/pycosat) | 0.6.6 | bindings to picosat (a SAT solver) +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.8.2 | Data validation using Python type hints +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.20.1 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.7.2 | Python driver for MongoDB +[pymoo](https://pypi.org/project/pymoo) | 0.6.1.3 | Multi-Objective Optimization in Python +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.1.0 | DB API module for ODBC +[pyomo](https://pypi.org/project/pyomo) | 6.8.0 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.1.2 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pypng](https://pypi.org/project/pypng) | 0.20220715.0 | Pure Python library for saving and loading PNG images +[pyproj](https://pypi.org/project/pyproj) | 3.6.1 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.13.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pyshp](https://pypi.org/project/pyshp) | 2.3.1 | Pure Python read/write support for ESRI Shapefile format +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonnet](https://pypi.org/project/pythonnet) | 3.0.3 | .NET and Mono integration for Python +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.12.7 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywin32](https://pypi.org/project/pywin32) | 306 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.12 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.1 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.0.3 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qrcode](https://pypi.org/project/qrcode) | 7.4.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.3 | rapid fuzzy string matching +[rasterio](https://pypi.org/project/rasterio) | 1.3.10 | Fast and direct raster I/O for use with Numpy and SciPy +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.3 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2023.10.3 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.31.0 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.1.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.7.1 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.13.2 | Python bindings to Rust's persistent data structures (rpds) +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.24.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.5.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.14.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.4.post1 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 72.2.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.4 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.0.post1 | Tool to Detect Surrounding Shell +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[snuggs](https://pypi.org/project/snuggs) | 1.4.7 | Snuggs are s-expressions for Numpy +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.8 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.6 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.5 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.7 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.30 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.37 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.4.3 | A non-validating SQL parser. +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.37.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.2 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.37.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[swifter](https://pypi.org/project/swifter) | 1.3.4 | A package which efficiently applies any function to a pandas dataframe or series in the fastest available manner +[sympy](https://pypi.org/project/sympy) | 1.13.2 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tbats](https://pypi.org/project/tbats) | 1.1.0 | BATS and TBATS for time series forecasting +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.5.0 | Retry code until it succeeds +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.2 | Compute distance between the two texts. +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2024.7.2 | Read and write TIFF files +[tinycss2](https://pypi.org/project/tinycss2) | 1.3.0 | A tiny CSS parser +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 0.12.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.26.2 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2023.2.20 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 4.0.1 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.12.3 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.8.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.30.3 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 4.0.1 | Filesystem events monitoring +[watchfiles](https://pypi.org/project/watchfiles) | 0.21.0 | Simple, modern and high performance file watching and code reload in python. +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 1.12 | A library for working with color names and color values formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 12.0 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.0.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.2 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 10.7.20240908 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.3 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2024.7.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xlwings](https://pypi.org/project/xlwings) | 0.24.7 | Make Excel fly: Interact with Excel from Python and vice versa. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.7.2 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.17.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.6.0_History.md b/changelogs/WinPythonslim-64bit-3.12.6.0_History.md new file mode 100644 index 00000000..1f2dbdde --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.6.0_History.md @@ -0,0 +1,195 @@ +## History of changes for WinPython-64bit 3.12.6.0slim + +The following changes were made to WinPython-64bit distribution since version 3.12.4.1. (non-slim) + +
+### Tools + +Removed packages: + + * [Nodejs](https://nodejs.org) v20.12.2 (a JavaScript runtime built on Chrome's V8 JavaScript engine) + * [npmjs](https://www.npmjs.com/) 10.5.0 (a package manager for JavaScript) + +### Python packages + +New packages: + + * [jiter](https://pypi.org/project/jiter) 0.5.0 (Fast iterable JSON parser.) + * [narwhals](https://pypi.org/project/narwhals) 1.5.5 (Extremely lightweight compatibility layer between dataframe libraries) + * [types_python_dateutil](https://pypi.org/project/types_python_dateutil) 2.9.0.20240316 (Typing stubs for python-dateutil) + +Upgraded packages: + + * [altair](https://pypi.org/project/altair) 5.3.0 → 5.4.1 (Vega-Altair: A declarative statistical visualization library for Python.) + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.7.1 → 1.8 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [arrow](https://pypi.org/project/arrow) 1.2.2 → 1.3.0 (Better dates & times for Python) + * [azure_core](https://pypi.org/project/azure_core) 1.30.1 → 1.30.2 (Microsoft Azure Core Library for Python) + * [azure_cosmos](https://pypi.org/project/azure_cosmos) 4.6.0 → 4.7.0 (Microsoft Azure Cosmos Client Library for Python) + * [azure_identity](https://pypi.org/project/azure_identity) 1.16.0 → 1.16.1 (Microsoft Azure Identity Library for Python) + * [black](https://pypi.org/project/black) 24.4.2 → 24.8.0 (The uncompromising code formatter.) + * [bokeh](https://pypi.org/project/bokeh) 3.4.1 → 3.5.1 (Interactive plots and applications in the browser from Python) + * [cython](https://pypi.org/project/cython) 3.0.10 → 3.0.11 (The Cython compiler for writing C extensions in the Python language.) + * [dask](https://pypi.org/project/dask) 2024.5.2 → 2024.7.1 (Parallel PyData with Task Scheduling) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.2 → 1.1.9 (High Level Expressions for Dask ) + * [datasette](https://pypi.org/project/datasette) 0.64.6 → 0.64.8 (An open source multi-tool for exploring and publishing data) + * [datashader](https://pypi.org/project/datashader) 0.16.2 → 0.16.3 (Data visualization toolchain based on aggregating into a grid) + * [decorator](https://pypi.org/project/decorator) 4.4.2 → 5.1.1 (Decorators for Humans) + * [diff_match_patch](https://pypi.org/project/diff_match_patch) 20200713 → 20230430 (Diff Match and Patch) + * [distributed](https://pypi.org/project/distributed) 2024.5.2 → 2024.7.1 (Distributed scheduler for Dask) + * [django](https://pypi.org/project/django) 5.0.6 → 5.0.7 (A high-level Python web framework that encourages rapid development and clean, pragmatic design.) + * [email_validator](https://pypi.org/project/email_validator) 2.1.1 → 2.2.0 (A robust email address syntax and deliverability validation library.) + * [fastapi](https://pypi.org/project/fastapi) 0.111.0 → 0.111.1 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [flake8](https://pypi.org/project/flake8) 7.0.0 → 7.1.1 (the modular source code checker: pep8 pyflakes and co) + * [folium](https://pypi.org/project/folium) 0.16.0 → 0.17.0 (Make beautiful maps with Leaflet.js & Python) + * [fsspec](https://pypi.org/project/fsspec) 2024.3.1 → 2024.6.1 (File-system specification) + * [guidata](https://pypi.org/project/guidata) 3.5.0 → 3.6.2 (Automatic GUI generation for easy dataset editing and display) + * [hatchling](https://pypi.org/project/hatchling) 1.24.2 → 1.25.0 (Modern, extensible Python build backend) + * [holoviews](https://pypi.org/project/holoviews) 1.19.0 → 1.19.1 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [httpie](https://pypi.org/project/httpie) 3.2.2 → 3.2.3 (HTTPie: modern, user-friendly command-line HTTP client for the API era.) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.23.0 → 0.24.5 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypothesis](https://pypi.org/project/hypothesis) 6.100.5 → 6.108.5 (A library for property-based testing) + * [ipykernel](https://pypi.org/project/ipykernel) 6.29.4 → 6.29.5 (IPython Kernel for Jupyter) + * [ipyleaflet](https://pypi.org/project/ipyleaflet) 0.19.1 → 0.19.2 (A Jupyter widget for dynamic Leaflet maps) + * [ipython](https://pypi.org/project/ipython) 8.25.0 → 8.26.0 (IPython: Productive Interactive Computing) + * [ipywidgets](https://pypi.org/project/ipywidgets) 8.1.2 → 8.1.5 (Jupyter interactive widgets) + * [jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) 0.19.1 → 0.19.2 (ipyleaflet extensions for JupyterLab and Jupyter Notebook) + * [jupyter_server](https://pypi.org/project/jupyter_server) 2.14.1 → 2.14.2 (The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.2.2 → 4.2.5 (JupyterLab computational environment) + * [jupyterlab_server](https://pypi.org/project/jupyterlab_server) 2.27.2 → 2.27.3 (A set of server components for JupyterLab and JupyterLab like applications.) + * [jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) 3.0.11 → 3.0.13 (Jupyter interactive widgets for JupyterLab) + * [keras](https://pypi.org/project/keras) 3.3.3 → 3.5.0 (Multi-backend Keras.) + * [mako](https://pypi.org/project/mako) 1.2.0 → 1.3.5 (A super-fast templating language that borrows the best ideas from the existing templating languages.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.9.0 → 3.9.2 (Python plotting package) + * [maturin](https://pypi.org/project/maturin) 1.5.1 → 1.7.0 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * [msal](https://pypi.org/project/msal) 1.24.1 → 1.30.0 (The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us) + * [msal_extensions](https://pypi.org/project/msal_extensions) 1.0.0 → 1.2.0 (Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an) + * [mypy](https://pypi.org/project/mypy) 1.10.0 → 1.11.1 (Optional static typing for Python) + * [netcdf4](https://pypi.org/project/netcdf4) 1.6.5 → 1.7.1.post2 (Provides an object-oriented python interface to the netCDF version 4 library) + * [numexpr](https://pypi.org/project/numexpr) 2.10.0 → 2.10.1 (Fast numerical expression evaluator for NumPy) + * [numpy](https://pypi.org/project/numpy) 1.26.4 → 2.0.1 (Fundamental package for array computing in Python) + * [openai](https://pypi.org/project/openai) 1.33.0 → 1.42.0 (The official Python library for the openai API) + * [opencv_python](https://pypi.org/project/opencv_python) 4.10.0.82 → 4.10.0.84 (Wrapper package for OpenCV python bindings.) + * [panel](https://pypi.org/project/panel) 1.4.4 → 1.5.0b4 (The powerful data exploration & web app framework for Python.) + * [param](https://pypi.org/project/param) 2.1.0 → 2.1.1 (Make your Python code clearer and more reliable by declaring Parameters.) + * [pillow](https://pypi.org/project/pillow) 10.3.0 → 10.4.0 (Python Imaging Library (Fork)) + * [pip](https://pypi.org/project/pip) 24.0 → 24.2 (The PyPA recommended tool for installing Python packages.) + * [plotly](https://pypi.org/project/plotly) 5.22.0 → 5.23.0 (An open-source, interactive data visualization library for Python) + * [plotpy](https://pypi.org/project/plotpy) 2.3.0 → 2.6.2 (Curve and image plotting tools for Python/Qt applications) + * [polars](https://pypi.org/project/polars) 0.20.31 → 1.6.0 (Blazingly fast DataFrame library) + * [prompt_toolkit](https://pypi.org/project/prompt_toolkit) 3.0.43 → 3.0.47 (Library for building powerful interactive command lines in Python) + * [protobuf](https://pypi.org/project/protobuf) 4.25.1 → 5.27.3 () + * [ptpython](https://pypi.org/project/ptpython) 3.0.26 → 3.0.29 (Python REPL build on top of prompt_toolkit) + * [pyarrow](https://pypi.org/project/pyarrow) 16.1.0 → 17.0.0 (Python library for Apache Arrow) + * [pybind11](https://pypi.org/project/pybind11) 2.12.0 → 2.13.1 (Seamless operability between C++11 and Python) + * [pycodestyle](https://pypi.org/project/pycodestyle) 2.11.1 → 2.12.0 (Python style guide checker) + * [pydantic](https://pypi.org/project/pydantic) 2.7.1 → 2.8.2 (Data validation using Python type hints) + * [pydantic_core](https://pypi.org/project/pydantic_core) 2.18.2 → 2.20.1 (Core functionality for Pydantic validation and serialization) + * [pymoo](https://pypi.org/project/pymoo) 0.6.1.1 → 0.6.1.3 (Multi-Objective Optimization in Python) + * [pyomo](https://pypi.org/project/pyomo) 6.7.2 → 6.8.0 (Pyomo: Python Optimization Modeling Objects) + * [pytest](https://pypi.org/project/pytest) 8.2.0 → 8.2.2 (pytest: simple powerful testing with Python) + * [Python](http://www.python.org/) 3.12.4 → 3.12.6 (Python programming language with standard library) + * [python_lsp_server](https://pypi.org/project/python_lsp_server) 1.11.0 → 1.12.0 (Python Language Server for the Language Server Protocol) + * [python_slugify](https://pypi.org/project/python_slugify) 6.1.2 → 8.0.4 (A Python slugify application that also handles Unicode) + * [pythonqwt](https://pypi.org/project/pythonqwt) 0.12.1 → 0.12.7 (Qt plotting widgets for Python) + * [pytz](https://pypi.org/project/pytz) 2023.3 → 2024.1 (World timezone definitions, modern and historical) + * [pyviz_comms](https://pypi.org/project/pyviz_comms) 3.0.2 → 3.0.3 (A JupyterLab extension for rendering HoloViz content.) + * [quantecon](https://pypi.org/project/quantecon) 0.5.3 → 0.7.2 (Import the main names to top level.) + * [rapidfuzz](https://pypi.org/project/rapidfuzz) 3.5.2 → 3.9.3 (rapid fuzzy string matching) + * [redis](https://pypi.org/project/redis) 4.3.1 → 5.0.3 (Python client for Redis database and key-value store) + * [referencing](https://pypi.org/project/referencing) 0.31.1 → 0.35.1 (JSON Referencing + Python) + * [reportlab](https://pypi.org/project/reportlab) 4.2.0 → 4.2.2 (The Reportlab Toolkit) + * [scikit_image](https://pypi.org/project/scikit_image) 0.23.2 → 0.24.0 (Image processing in Python) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.5.0 → 1.5.1 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.13.1 → 1.14.1 (Fundamental algorithms for scientific computing in Python) + * [setuptools](https://pypi.org/project/setuptools) 69.5.1 → 72.2.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [sphinx](https://pypi.org/project/sphinx) 7.2.6 → 7.3.7 (Python documentation generator) + * [sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) 1.0.2 → 1.0.8 (sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books) + * [sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) 1.0.2 → 1.0.6 (sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents) + * [sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) 2.0.0 → 2.0.5 (sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files) + * [sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) 1.0.3 → 1.0.7 (sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents) + * [spyder](https://pypi.org/project/spyder) 5.5.5 → 5.5.6 (The Scientific Python Development Environment) + * [sqlalchemy](https://pypi.org/project/sqlalchemy) 2.0.28 → 2.0.30 (Database Abstraction Library) + * [sqlite_utils](https://pypi.org/project/sqlite_utils) 3.36 → 3.37 (CLI tool and Python library for manipulating SQLite databases) + * [streamlit](https://pypi.org/project/streamlit) 1.35.0 → 1.37.1 (A faster way to build and share data apps) + * [sympy](https://pypi.org/project/sympy) 1.12.1 → 1.13.2 (Computer algebra system (CAS) in Python) + * [tblib](https://pypi.org/project/tblib) 1.7.0 → 3.0.0 (Traceback serialization library.) + * [tenacity](https://pypi.org/project/tenacity) 8.1.0 → 8.5.0 (Retry code until it succeeds) + * [textdistance](https://pypi.org/project/textdistance) 4.5.0 → 4.6.2 (Compute distance between the two texts.) + * [tifffile](https://pypi.org/project/tifffile) 2023.7.18 → 2024.7.2 (Read and write TIFF files) + * [tinycss2](https://pypi.org/project/tinycss2) 1.1.1 → 1.3.0 (A tiny CSS parser) + * [tornado](https://pypi.org/project/tornado) 6.4 → 6.4.1 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * [trio](https://pypi.org/project/trio) 0.25.1 → 0.26.2 (A friendly Python library for async concurrency and I/O) + * [typing_extensions](https://pypi.org/project/typing_extensions) 4.9.0 → 4.12.2 (Backported and Experimental Type Hints for Python 3.8+) + * [tzdata](https://pypi.org/project/tzdata) 2022.7 → 2024.1 (Provider of IANA time zone data) + * [tzlocal](https://pypi.org/project/tzlocal) 4.2 → 5.2 (tzinfo object for the local timezone) + * [umap_learn](https://pypi.org/project/umap_learn) 0.5.1 → 0.5.6 (Uniform Manifold Approximation and Projection) + * [uri_template](https://pypi.org/project/uri_template) 1.2.0 → 1.3.0 (RFC 6570 URI Template Processor) + * [uvicorn](https://pypi.org/project/uvicorn) 0.29.0 → 0.30.3 (The lightning-fast ASGI server.) + * [waitress](https://pypi.org/project/waitress) 2.1.2 → 3.0.0 (Waitress WSGI server) + * [watchdog](https://pypi.org/project/watchdog) 2.2.0 → 4.0.1 (Filesystem events monitoring) + * [wheel](https://pypi.org/project/wheel) 0.43.0 → 0.44.0 (A built-package format for Python) + * [widgetsnbextension](https://pypi.org/project/widgetsnbextension) 4.0.10 → 4.0.13 (Jupyter interactive widgets for Jupyter Notebook) + * [winpython](https://pypi.org/project/winpython) 8.2.20240618 → 10.7.20240908 (WinPython distribution tools, including WPPM) + * [wrapt](https://pypi.org/project/wrapt) 1.14.1 → 1.16.0 (Module for decorators, wrappers and monkey patching.) + * [xarray](https://pypi.org/project/xarray) 2024.6.0 → 2024.7.0 (N-D labeled arrays and datasets in Python) + * [zstandard](https://pypi.org/project/zstandard) 0.22.0 → 0.23.0 (Zstandard bindings for Python) + +Removed packages: + + * [accelerate](https://pypi.org/project/accelerate) 0.28.0 (Accelerate) + * [altair_data_server](https://pypi.org/project/altair_data_server) 0.4.1 (A background data server for Altair charts.) + * [altair_transform](https://pypi.org/project/altair_transform) 0.2.0 (A python engine for evaluating Altair transforms.) + * [async_timeout](https://pypi.org/project/async_timeout) 4.0.3 (Timeout context manager for asyncio programs) + * [botorch](https://pypi.org/project/botorch) 0.9.5 (Bayesian Optimization in PyTorch) + * [coverage](https://pypi.org/project/coverage) 7.5.3 (Code coverage measurement for Python) + * [dash](https://pypi.org/project/dash) 2.17.0 (A Python framework for building reactive web-apps. Developed by Plotly.) + * [dash_core_components](https://pypi.org/project/dash_core_components) 2.0.0 (Core component suite for Dash) + * [dash_html_components](https://pypi.org/project/dash_html_components) 2.0.0 (Vanilla HTML components for Dash) + * [dash_table](https://pypi.org/project/dash_table) 5.0.0 (Dash table) + * [dask_image](https://pypi.org/project/dask_image) 2024.5.3 (Distributed image processing) + * [distlib](https://pypi.org/project/distlib) 0.3.8 (Distribution utilities) + * [gdal](https://pypi.org/project/gdal) 3.7.3 (GDAL: Geospatial Data Abstraction Library) + * [gpytorch](https://pypi.org/project/gpytorch) 1.11 (An implementation of Gaussian Processes in Pytorch) + * [imageio_ffmpeg](https://pypi.org/project/imageio_ffmpeg) 0.4.8 (FFMPEG wrapper for Python) + * [jaxtyping](https://pypi.org/project/jaxtyping) 0.2.22 (Type annotations and runtime checking for shape and dtype of JAX arrays, and PyTrees.) + * [jsonpatch](https://pypi.org/project/jsonpatch) 1.33 (Apply JSON-Patches (RFC 6902) ) + * [kornia](https://pypi.org/project/kornia) 0.7.2 (Open Source Differentiable Computer Vision Library for PyTorch) + * [kornia_rs](https://pypi.org/project/kornia_rs) 0.1.3 (Low level implementations for computer vision in Rust) + * [langchain](https://pypi.org/project/langchain) 0.2.5 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.2.7 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.2.1 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.1.77 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [lightning](https://pypi.org/project/lightning) 2.2.1 (The Deep Learning framework to train, deploy, and ship AI products Lightning fast.) + * [lightning_utilities](https://pypi.org/project/lightning_utilities) 0.10.0 (PyTorch Lightning Sample project.) + * [linear_operator](https://pypi.org/project/linear_operator) 0.5.1 (A linear operator implementation, primarily designed for finite-dimensional positive definite operators (i.e. kernel matrices).) + * [moviepy](https://pypi.org/project/moviepy) 1.0.3 (Video editing with Python) + * [opt_einsum](https://pypi.org/project/opt_einsum) 3.3.0 (Optimizing numpys einsum function) + * [ortools](https://pypi.org/project/ortools) 9.8.3296 (Google OR-Tools python libraries and modules) + * [pims](https://pypi.org/project/pims) 0.6.1 (Python Image Sequence) + * [portpicker](https://pypi.org/project/portpicker) 1.5.0 (A library to choose unique available network ports.) + * [proglog](https://pypi.org/project/proglog) 0.1.10 (Log and progress bar manager for console, notebooks, web...) + * [pyepsg](https://pypi.org/project/pyepsg) 0.4.0 (Easy access to the EPSG database via http://epsg.io/) + * [pygame](https://pypi.org/project/pygame) 2.5.2 (Python Game Development) + * [pyro_api](https://pypi.org/project/pyro_api) 0.1.2 (Generic API for dispatch to Pyro backends.) + * [pyro_ppl](https://pypi.org/project/pyro_ppl) 1.9.0 (A Python library for probabilistic modeling and inference) + * [pytorch_lightning](https://pypi.org/project/pytorch_lightning) 2.2.1 (PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate.) + * [pytz_deprecation_shim](https://pypi.org/project/pytz_deprecation_shim) 0.1.0.post0 (Shims to make deprecation of pytz easier) + * [qpsolvers](https://pypi.org/project/qpsolvers) 4.3.0 (Quadratic programming solvers in Python with a unified API.) + * [retrying](https://pypi.org/project/retrying) 1.3.4 (Retrying) + * [safetensors](https://pypi.org/project/safetensors) 0.4.2 (Fast and Safe Tensor serialization) + * [slicerator](https://pypi.org/project/slicerator) 1.1.0 (A lazy-loading, fancy-sliceable iterable.) + * [tokenizers](https://pypi.org/project/tokenizers) 0.15.1 (Fast and Customizable Tokenizers) + * [torch](https://pypi.org/project/torch) 2.2.2 (Tensors and Dynamic neural networks in Python with strong GPU acceleration) + * [torchaudio](https://pypi.org/project/torchaudio) 2.2.2 (An audio package for PyTorch) + * [torchmetrics](https://pypi.org/project/torchmetrics) 1.3.2 (PyTorch native Metrics) + * [torchvision](https://pypi.org/project/torchvision) 0.17.2 (image and video datasets and models for torch deep learning) + * [transformers](https://pypi.org/project/transformers) 4.38.2 (State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow) + * [typeguard](https://pypi.org/project/typeguard) 2.13.3 (Run-time type checker for Python) + * [virtualenv](https://pypi.org/project/virtualenv) 20.26.2 (Virtual Python Environment builder) + * [wasmer](https://pypi.org/project/wasmer) 1.1.0 (Python extension to run WebAssembly binaries) + * [wasmer_compiler_cranelift](https://pypi.org/project/wasmer_compiler_cranelift) 1.1.0 (Python extension to run WebAssembly binaries) + * [wasmer_compiler_singlepass](https://pypi.org/project/wasmer_compiler_singlepass) 1.1.0 (Python extension to run WebAssembly binaries) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.12.8.0.md b/changelogs/WinPythonslim-64bit-3.12.8.0.md new file mode 100644 index 00000000..0d5a676a --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.8.0.md @@ -0,0 +1,542 @@ +## WinPython 3.12.8.0slim + +The following packages are included in WinPython-64bit v3.12.8.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org/) | 3.1.9 | a universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.8 | Python programming language with standard library +[about_time](https://pypi.org/project/about_time) | 4.2.1 | Easily measure timing and throughput of code blocks, with beautiful human friendly representations. +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[affine](https://pypi.org/project/affine) | 2.3.1 | Matrices describing affine transformation of the plane. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[alive_progress](https://pypi.org/project/alive_progress) | 3.1.5 | A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations! +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.42.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.7.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.8 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autograd](https://pypi.org/project/autograd) | 1.6.2 | Efficiently computes derivatives of numpy code. +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.10.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.6.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.4.0 | Extensible memoizing collections and decorators +[cartopy](https://pypi.org/project/cartopy) | 0.23.0 | A Python library for cartographic visualizations with Matplotlib +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[cftime](https://pypi.org/project/cftime) | 1.6.3 | Time-handling functionality from netcdf4-python +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[click_plugins](https://pypi.org/project/click_plugins) | 1.1.1 | An extension module for click to enable registering CLI commands via setuptools entry-points. +[cligj](https://pypi.org/project/cligj) | 0.7.2 | Click params for commmand line interfaces to GeoJSON +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[clr_loader](https://pypi.org/project/clr_loader) | 0.2.6 | Generic pure Python loader for .NET runtimes +[clrmagic](https://pypi.org/project/clrmagic) | 0.0.1a2 | IPython cell magic to use .NET languages +[cma](https://pypi.org/project/cma) | 3.2.2 | CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 41.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 0.12.3 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.12.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.21 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[deap](https://pypi.org/project/deap) | 1.4.1 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.13 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2024.12.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.1.3 | DuckDB in-process database +[ecos](https://pypi.org/project/ecos) | 2.0.13 | This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information. +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval_type_backport](https://pypi.org/project/eval_type_backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.6 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[fiona](https://pypi.org/project/fiona) | 1.10.1 | Fiona reads and writes spatial data files +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.18.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 0.14.4 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google_auth](https://pypi.org/project/google_auth) | 2.37.0 | Google Authentication Library +[grapheme](https://pypi.org/project/grapheme) | 0.6.0 | Unicode grapheme helpers +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.4 | Signatures for entire Python programs +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.27.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.108.5 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.12.3 | Toolbox for imbalanced dataset in machine learning. +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.26.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 1.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 5.3.0 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.0.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath_python](https://pypi.org/project/jsonpath_python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.3.4 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.7.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.2.1 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.7 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.13 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.3.28 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.3.4 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.2.6 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0rc2 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire_api](https://pypi.org/project/logfire_api) | 2.11.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.7.0 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.22.0 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.14.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.15.2 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[netcdf4](https://pypi.org/project/netcdf4) | 1.7.1.post2 | Provides an object-oriented python interface to the netCDF version 4 library +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.3.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[ntlm_auth](https://pypi.org/project/ntlm_auth) | 1.5.0 | Creates NTLM authentication structures +[numba](https://pypi.org/project/numba) | 0.61.0rc2 | compiling Python code using LLVM +[numexpr](https://pypi.org/project/numexpr) | 2.10.1 | Fast numerical expression evaluator for NumPy +[numpy](https://pypi.org/project/numpy) | 2.1.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.58.1 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.13.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post1 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.5.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.0.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.11.2 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.24.1 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.0 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.18.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.48 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pulp](https://pypi.org/project/pulp) | 2.6.0 | PuLP is an LP modeler written in python +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 18.1.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.4.8 | ASN.1 types and codecs +[pyasn1_modules](https://pypi.org/project/pyasn1_modules) | 0.2.8 | A collection of ASN.1-based protocols modules. +[pyaudio](https://pypi.org/project/pyaudio) | 0.2.14 | Cross-platform audio I/O with PortAudio +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycosat](https://pypi.org/project/pycosat) | 0.6.6 | bindings to picosat (a SAT solver) +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.4 | Data validation using Python type hints +[pydantic_ai](https://pypi.org/project/pydantic_ai) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs +[pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pymoo](https://pypi.org/project/pymoo) | 0.6.1.3 | Multi-Objective Optimization in Python +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyomo](https://pypi.org/project/pyomo) | 6.8.0 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.1.2 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pypng](https://pypi.org/project/pypng) | 0.20220715.0 | Pure Python library for saving and loading PNG images +[pyproj](https://pypi.org/project/pyproj) | 3.6.1 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.13.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pyshp](https://pypi.org/project/pyshp) | 2.3.1 | Pure Python read/write support for ESRI Shapefile format +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonnet](https://pypi.org/project/pythonnet) | 3.0.3 | .NET and Mono integration for Python +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.2 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post4 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 7.4.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[rasterio](https://pypi.org/project/rasterio) | 1.3.10 | Fast and direct raster I/O for use with Numpy and SciPy +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.3 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.1.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.25.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.6.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.14.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.4 | Manipulation and analysis of geometric objects +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[snuggs](https://pypi.org/project/snuggs) | 1.4.7 | Snuggs are s-expressions for Numpy +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.8 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.6 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.5 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.7 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.35 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.37 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.4.3 | A non-validating SQL parser. +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.41.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.41.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[sympy](https://pypi.org/project/sympy) | 1.13.2 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.5.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.2 | Compute distance between the two texts. +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2024.7.2 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.3.0 | A tiny CSS parser +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 0.12.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.27.0 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 4.0.1 | Collection of utilities for publishing packages on PyPI +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing_inspect](https://pypi.org/project/typing_inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.30.3 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 4.0.1 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 1.12 | A library for working with color names and color values formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 13.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.0.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.2 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 11.2.20241228 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2024.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xlwings](https://pypi.org/project/xlwings) | 0.24.7 | Make Excel fly: Interact with Excel from Python and vice versa. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.17.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.8.0_History.md b/changelogs/WinPythonslim-64bit-3.12.8.0_History.md new file mode 100644 index 00000000..a109c52b --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.8.0_History.md @@ -0,0 +1,154 @@ +## History of changes for WinPython-64bit 3.12.8.0slim + +The following changes were made to WinPython-64bit distribution since version 3.12.6.0slim. + +
+### Python packages + +New packages: + + * [aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) 2.4.4 (Happy Eyeballs for asyncio) + * [anthropic](https://pypi.org/project/anthropic) 0.42.0 (The official Python library for the anthropic API) + * [eval_type_backport](https://pypi.org/project/eval_type_backport) 0.2.2 (Like `typing._eval_type`, but lets older Python versions use newer typing features.) + * [google_auth](https://pypi.org/project/google_auth) 2.37.0 (Google Authentication Library) + * [griffe](https://pypi.org/project/griffe) 1.5.4 (Signatures for entire Python programs) + * [groq](https://pypi.org/project/groq) 0.13.1 (The official Python library for the groq API) + * [jsonpatch](https://pypi.org/project/jsonpatch) 1.33 (Apply JSON-Patches (RFC 6902) ) + * [jsonpath_python](https://pypi.org/project/jsonpath_python) 1.0.6 (A more powerful JSONPath implementation in modern python) + * [langchain](https://pypi.org/project/langchain) 0.3.13 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.3.28 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.3.4 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.2.6 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [logfire_api](https://pypi.org/project/logfire_api) 2.11.0 (Shim for the Logfire SDK which does nothing unless Logfire is installed) + * [mistralai](https://pypi.org/project/mistralai) 1.2.5 (Python Client SDK for the Mistral AI API.) + * [osqp](https://pypi.org/project/osqp) 0.6.7.post1 (OSQP: The Operator Splitting QP Solver) + * [propcache](https://pypi.org/project/propcache) 0.2.1 (Accelerated property cache) + * [pyasn1](https://pypi.org/project/pyasn1) 0.4.8 (ASN.1 types and codecs) + * [pyasn1_modules](https://pypi.org/project/pyasn1_modules) 0.2.8 (A collection of ASN.1-based protocols modules.) + * [pydantic_ai](https://pypi.org/project/pydantic_ai) 0.0.15 (Agent Framework / shim to use Pydantic with LLMs) + * [pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) 0.0.15 (Agent Framework / shim to use Pydantic with LLMs, slim package) + * [qdldl](https://pypi.org/project/qdldl) 0.1.7.post4 (QDLDL, a free LDL factorization routine.) + * [rsa](https://pypi.org/project/rsa) 4.7.2 (Pure-Python RSA implementation) + * [termcolor](https://pypi.org/project/termcolor) 2.5.0 (ANSI color formatting for output in terminal) + * [tiktoken](https://pypi.org/project/tiktoken) 0.8.0 (tiktoken is a fast BPE tokeniser for use with OpenAI's models) + * [typing_inspect](https://pypi.org/project/typing_inspect) 0.9.0 (Runtime inspection utilities for typing module.) + +Upgraded packages: + + * [adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) 0.11.0 → 1.3.0 (A generic entrypoint for ADBC drivers.) + * [aiohttp](https://pypi.org/project/aiohttp) 3.9.5 → 3.11.11 (Async http client/server framework (asyncio)) + * [altair](https://pypi.org/project/altair) 5.4.1 → 5.5.0 (Vega-Altair: A declarative statistical visualization library for Python.) + * [anyio](https://pypi.org/project/anyio) 4.4.0 → 4.7.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * [astropy](https://pypi.org/project/astropy) 6.1.0 → 6.1.6 (Astronomy and astrophysics core library) + * [astropy_iers_data](https://pypi.org/project/astropy_iers_data) 0.2024.4.29.0.28.48 → 0.2024.12.23.0.33.24 (IERS Earth Rotation and Leap Second tables for the astropy core package) + * [babel](https://pypi.org/project/babel) 2.15.0 → 2.16.0 (Internationalization utilities) + * [black](https://pypi.org/project/black) 24.8.0 → 24.10.0 (The uncompromising code formatter.) + * [bokeh](https://pypi.org/project/bokeh) 3.5.1 → 3.6.1 (Interactive plots and applications in the browser from Python) + * [branca](https://pypi.org/project/branca) 0.7.2 → 0.8.0 (Generate complex HTML+JS pages with Python) + * [build](https://pypi.org/project/build) 1.2.1 → 1.2.2.post1 (A simple, correct Python build frontend) + * [cachetools](https://pypi.org/project/cachetools) 5.3.3 → 5.4.0 (Extensible memoizing collections and decorators) + * [cffi](https://pypi.org/project/cffi) 1.16.0 → 1.17.1 (Foreign Function Interface for Python calling C code.) + * [charset_normalizer](https://pypi.org/project/charset_normalizer) 3.3.2 → 3.4.0 (The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet.) + * [contourpy](https://pypi.org/project/contourpy) 1.2.1 → 1.3.1 (Python library for calculating contours of 2D quadrilateral grids) + * [cvxpy](https://pypi.org/project/cvxpy) 1.5.0 → 1.6.0 (A domain-specific language for modeling convex optimization problems in Python.) + * [dask](https://pypi.org/project/dask) 2024.7.1 → 2024.12.1 (Parallel PyData with Task Scheduling) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.9 → 1.1.21 (High Level Expressions for Dask ) + * [distributed](https://pypi.org/project/distributed) 2024.7.1 → 2024.12.1 (Distributed scheduler for Dask) + * [duckdb](https://pypi.org/project/duckdb) 1.0.0 → 1.1.3 (DuckDB in-process database) + * [fastapi](https://pypi.org/project/fastapi) 0.111.1 → 0.115.6 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [fiona](https://pypi.org/project/fiona) 1.9.5 → 1.10.1 (Fiona reads and writes spatial data files) + * [folium](https://pypi.org/project/folium) 0.17.0 → 0.18.0 (Make beautiful maps with Leaflet.js & Python) + * [fonttools](https://pypi.org/project/fonttools) 4.51.0 → 4.55.3 (Tools to manipulate font files) + * [frozenlist](https://pypi.org/project/frozenlist) 1.4.1 → 1.5.0 (A list-like structure which implements collections.abc.MutableSequence) + * [greenlet](https://pypi.org/project/greenlet) 3.0.3 → 3.1.1 (Lightweight in-process concurrent programming) + * [guidata](https://pypi.org/project/guidata) 3.6.2 → 3.7.1 (Automatic GUI generation for easy dataset editing and display) + * [h5py](https://pypi.org/project/h5py) 3.10.0 → 3.12.1 (Read and write HDF5 files from Python) + * [hatchling](https://pypi.org/project/hatchling) 1.25.0 → 1.27.0 (Modern, extensible Python build backend) + * [holoviews](https://pypi.org/project/holoviews) 1.19.1 → 1.20.0 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [httpie](https://pypi.org/project/httpie) 3.2.3 → 3.2.4 (HTTPie: modern, user-friendly command-line HTTP client for the API era.) + * [httpx](https://pypi.org/project/httpx) 0.27.0 → 0.27.2 (The next generation HTTP client.) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.24.5 → 0.27.0 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hvplot](https://pypi.org/project/hvplot) 0.10.0 → 0.11.2 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [jellyfish](https://pypi.org/project/jellyfish) 1.0.3 → 1.1.3 (Approximate and phonetic matching of strings.) + * [jiter](https://pypi.org/project/jiter) 0.5.0 → 0.8.2 (Fast iterable JSON parser.) + * [jupyter](https://pypi.org/project/jupyter) 1.0.0 → 1.1.1 (Jupyter metapackage. Install all the Jupyter components in one go.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.2.5 → 4.3.4 (JupyterLab computational environment) + * [keras](https://pypi.org/project/keras) 3.5.0 → 3.7.0 (Multi-backend Keras) + * [kiwisolver](https://pypi.org/project/kiwisolver) 1.4.5 → 1.4.7 (A fast implementation of the Cassowary constraint solver) + * [llvmlite](https://pypi.org/project/llvmlite) 0.43.0 → 0.44.0rc2 (lightweight wrapper around basic LLVM functionality) + * [lxml](https://pypi.org/project/lxml) 5.2.2 → 5.3.0 (Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.9.2 → 3.10.0 (Python plotting package) + * [ml_dtypes](https://pypi.org/project/ml_dtypes) 0.4.0 → 0.5.0 () + * [multidict](https://pypi.org/project/multidict) 6.0.5 → 6.1.0 (multidict implementation) + * [mypy](https://pypi.org/project/mypy) 1.11.1 → 1.14.0 (Optional static typing for Python) + * [narwhals](https://pypi.org/project/narwhals) 1.5.5 → 1.15.2 (Extremely lightweight compatibility layer between dataframe libraries) + * [networkx](https://pypi.org/project/networkx) 3.3 → 3.4.2 (Python package for creating and manipulating graphs and networks) + * [nltk](https://pypi.org/project/nltk) 3.8.1 → 3.9.1 (Natural Language Toolkit) + * [notebook](https://pypi.org/project/notebook) 7.2.1 → 7.3.1 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * [numba](https://pypi.org/project/numba) 0.60.0 → 0.61.0rc2 (compiling Python code using LLVM) + * [numpy](https://pypi.org/project/numpy) 2.0.1 → 2.1.3 (Fundamental package for array computing in Python) + * [openai](https://pypi.org/project/openai) 1.42.0 → 1.58.1 (The official Python library for the openai API) + * [optree](https://pypi.org/project/optree) 0.11.0 → 0.13.1 (Optimized PyTree Utilities.) + * [orjson](https://pypi.org/project/orjson) 3.9.15 → 3.10.12 (Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy) + * [packaging](https://pypi.org/project/packaging) 24.1 → 24.2 (Core utilities for Python packages) + * [pandas](https://pypi.org/project/pandas) 2.2.2 → 2.2.3 (Powerful data structures for data analysis, time series, and statistics) + * [panel](https://pypi.org/project/panel) 1.5.0b4 → 1.5.4 (The powerful data exploration & web app framework for Python.) + * [pillow](https://pypi.org/project/pillow) 10.4.0 → 11.0.0 (Python Imaging Library (Fork)) + * [pip](https://pypi.org/project/pip) 24.2 → 24.3.1 (The PyPA recommended tool for installing Python packages.) + * [pkginfo](https://pypi.org/project/pkginfo) 1.9.6 → 1.11.2 (Query metadata from sdists / bdists / installed packages.) + * [plotly](https://pypi.org/project/plotly) 5.23.0 → 5.24.1 (An open-source, interactive data visualization library for Python) + * [plotpy](https://pypi.org/project/plotpy) 2.6.2 → 2.7.0 (Curve and image plotting tools for Python/Qt applications) + * [polars](https://pypi.org/project/polars) 1.6.0 → 1.18.0 (Blazingly fast DataFrame library) + * [prompt_toolkit](https://pypi.org/project/prompt_toolkit) 3.0.47 → 3.0.48 (Library for building powerful interactive command lines in Python) + * [pyarrow](https://pypi.org/project/pyarrow) 17.0.0 → 18.1.0 (Python library for Apache Arrow) + * [pybind11](https://pypi.org/project/pybind11) 2.13.1 → 2.13.6 (Seamless operability between C++11 and Python) + * [pydantic](https://pypi.org/project/pydantic) 2.8.2 → 2.10.4 (Data validation using Python type hints) + * [pydantic_core](https://pypi.org/project/pydantic_core) 2.20.1 → 2.27.2 (Core functionality for Pydantic validation and serialization) + * [pymongo](https://pypi.org/project/pymongo) 4.7.2 → 4.10.1 (Python driver for MongoDB ) + * [pyodbc](https://pypi.org/project/pyodbc) 5.1.0 → 5.2.0 (DB API module for ODBC) + * [Python](http://www.python.org/) 3.12.6 → 3.12.8 (Python programming language with standard library) + * [pythonqwt](https://pypi.org/project/pythonqwt) 0.12.7 → 0.14.2 (Qt plotting widgets for Python) + * [pywin32](https://pypi.org/project/pywin32) 306 → 308 (Python for Window Extensions) + * [pywinpty](https://pypi.org/project/pywinpty) 2.0.12 → 2.0.14 (Pseudo terminal support for Windows from Python.) + * [pyyaml](https://pypi.org/project/pyyaml) 6.0.1 → 6.0.2 (YAML parser and emitter for Python) + * [pyzmq](https://pypi.org/project/pyzmq) 26.0.3 → 26.2.0 (Python bindings for 0MQ) + * [rapidfuzz](https://pypi.org/project/rapidfuzz) 3.9.3 → 3.9.6 (rapid fuzzy string matching) + * [regex](https://pypi.org/project/regex) 2023.10.3 → 2024.11.6 (Alternative regular expression module, to replace re.) + * [requests](https://pypi.org/project/requests) 2.31.0 → 2.32.3 (Python HTTP for Humans.) + * [rich](https://pypi.org/project/rich) 13.7.1 → 13.9.4 (Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal) + * [rpds_py](https://pypi.org/project/rpds_py) 0.13.2 → 0.22.3 (Python bindings to Rust's persistent data structures (rpds)) + * [scikit_image](https://pypi.org/project/scikit_image) 0.24.0 → 0.25.0 (Image processing in Python) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.5.1 → 1.6.0 (A set of python modules for machine learning and data mining) + * [scs](https://pypi.org/project/scs) 3.2.4.post1 → 3.2.7 (Splitting conic solver) + * [setuptools](https://pypi.org/project/setuptools) 72.2.0 → 75.6.0 (Easily download, build, install, upgrade, and uninstall Python packages) + * [simplejson](https://pypi.org/project/simplejson) 3.19.2 → 3.19.3 (Simple, fast, extensible JSON encoder/decoder for Python) + * [sqlalchemy](https://pypi.org/project/sqlalchemy) 2.0.30 → 2.0.35 (Database Abstraction Library) + * [starlette](https://pypi.org/project/starlette) 0.37.2 → 0.41.3 (The little ASGI library that shines.) + * [statsmodels](https://pypi.org/project/statsmodels) 0.14.2 → 0.14.4 (Statistical computations and models for Python) + * [streamlit](https://pypi.org/project/streamlit) 1.37.1 → 1.41.1 (A faster way to build and share data apps) + * [trio](https://pypi.org/project/trio) 0.26.2 → 0.27.0 (A friendly Python library for async concurrency and I/O) + * [trove_classifiers](https://pypi.org/project/trove_classifiers) 2023.2.20 → 2024.10.21.16 (Canonical source for classifiers on PyPI (pypi.org).) + * [ujson](https://pypi.org/project/ujson) 5.8.0 → 5.10.0 (Ultra fast JSON encoder and decoder for Python) + * [websockets](https://pypi.org/project/websockets) 12.0 → 13.1 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + * [winpython](https://pypi.org/project/winpython) 10.7.20240908 → 11.2.20241228 (WinPython distribution tools, including WPPM) + * [wordcloud](https://pypi.org/project/wordcloud) 1.9.3 → 1.9.4 (A little word cloud generator) + * [xarray](https://pypi.org/project/xarray) 2024.7.0 → 2024.11.0 (N-D labeled arrays and datasets in Python) + * [yarl](https://pypi.org/project/yarl) 1.7.2 → 1.18.3 (Yet another URL library) + +Removed packages: + + * [dirty_cat](https://pypi.org/project/dirty_cat) 0.4.1 (Machine learning with dirty categories.) + * [email_validator](https://pypi.org/project/email_validator) 2.2.0 (A robust email address syntax and deliverability validation library.) + * [fastapi_cli](https://pypi.org/project/fastapi_cli) 0.0.4 (Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀) + * [httptools](https://pypi.org/project/httptools) 0.6.1 (A collection of framework independent HTTP protocol utils.) + * [msvc_runtime](https://pypi.org/project/msvc_runtime) 14.40.33807 (Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories) + * [pmdarima](https://pypi.org/project/pmdarima) 2.0.4 (Python's forecast::auto.arima equivalent) + * [shellingham](https://pypi.org/project/shellingham) 1.5.0.post1 (Tool to Detect Surrounding Shell) + * [swifter](https://pypi.org/project/swifter) 1.3.4 (A package which efficiently applies any function to a pandas dataframe or series in the fastest available manner) + * [tbats](https://pypi.org/project/tbats) 1.1.0 (BATS and TBATS for time series forecasting) + * [typer](https://pypi.org/project/typer) 0.12.3 (Typer, build great CLIs. Easy to code. Based on Python type hints.) + * [watchfiles](https://pypi.org/project/watchfiles) 0.21.0 (Simple, modern and high performance file watching and code reload in python.) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.12.8.1.md b/changelogs/WinPythonslim-64bit-3.12.8.1.md new file mode 100644 index 00000000..897798ea --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.8.1.md @@ -0,0 +1,522 @@ +## WinPython 3.12.8.1slim + +The following packages are included in WinPython-64bit v3.12.8.1slim b3. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.8 | Python programming language with standard library +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.42.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.7.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.10.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.10.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.6.2 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.4.0 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.12.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.21 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2024.12.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.1.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval_type_backport](https://pypi.org/project/eval_type_backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 33.3.1 | Faker is a Python package that generates fake data for you. +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.6 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.18.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google_auth](https://pypi.org/project/google_auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.4 | Signatures for entire Python programs +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.27.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.122.3 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.31.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 6.0.1 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath_python](https://pypi.org/project/jsonpath_python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.3.4 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.8.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.7 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.13 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.3.28 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.3.4 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.2.6 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire_api](https://pypi.org/project/logfire_api) | 2.11.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.1 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.14.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.21.1 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.3.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.0 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.1.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.58.1 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.13.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.5.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.11.2 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.24.1 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.0 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.20.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.15.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.48 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 19.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.4.8 | ASN.1 types and codecs +[pyasn1_modules](https://pypi.org/project/pyasn1_modules) | 0.2.8 | A collection of ASN.1-based protocols modules. +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.4 | Data validation using Python type hints +[pydantic_ai](https://pypi.org/project/pydantic_ai) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs +[pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.8.0 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.1 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.13.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.2 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.3 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.25.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.6 | Manipulation and analysis of geometric objects +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sklearn_compat](https://pypi.org/project/sklearn_compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.8 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.6 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.5 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.7 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.35 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.41.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.41.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[sympy](https://pypi.org/project/sympy) | 1.13.2 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.5.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.2 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.1.10 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.3.0 | A tiny CSS parser +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.28.0 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.0.1 | Collection of utilities for publishing packages on PyPI +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing_inspect](https://pypi.org/project/typing_inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.30.3 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 12.0.20250201 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.1.1 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.8.1_History.md b/changelogs/WinPythonslim-64bit-3.12.8.1_History.md new file mode 100644 index 00000000..72a872d2 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.8.1_History.md @@ -0,0 +1,112 @@ +## History of changes for WinPython-64bit 3.12.8.1slim + +The following changes were made to WinPython-64bit distribution since version 3.12.8.0slim. + +
+### Tools + +Removed packages: + + * [Pandoc](https://pandoc.org/) 3.1.9 (a universal document converter) + +### Python packages + +New packages: + + * [faker](https://pypi.org/project/faker) 33.3.1 (Faker is a Python package that generates fake data for you.) + * [prince](https://pypi.org/project/prince) 0.15.0 (Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA) + * [pyogrio](https://pypi.org/project/pyogrio) 0.10.0 (Vectorized spatial vector file format I/O using GDAL/OGR) + * [pyspnego](https://pypi.org/project/pyspnego) 0.11.2 (Windows Negotiate Authentication Client and Server) + * [pywavelets](https://pypi.org/project/pywavelets) 1.8.0 (PyWavelets, wavelet transform module) + * [sklearn_compat](https://pypi.org/project/sklearn_compat) 0.1.3 (Ease support for compatible scikit-learn estimators across versions) + * [squarify](https://pypi.org/project/squarify) 0.4.4 (Pure Python implementation of the squarify treemap layout algorithm) + * [sspilib](https://pypi.org/project/sspilib) 0.2.0 (SSPI API bindings for Python) + * [thefuzz](https://pypi.org/project/thefuzz) 0.22.1 (Fuzzy string matching in python) + +Upgraded packages: + + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.8 → 1.10.0 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [bokeh](https://pypi.org/project/bokeh) 3.6.1 → 3.6.2 (Interactive plots and applications in the browser from Python) + * [cryptography](https://pypi.org/project/cryptography) 41.0.5 → 44.0.0 (cryptography is a package which provides cryptographic recipes and primitives to Python developers.) + * [cytoolz](https://pypi.org/project/cytoolz) 0.12.3 → 1.0.1 (Cython implementation of Toolz: High performance functional utilities) + * [deap](https://pypi.org/project/deap) 1.4.1 → 1.4.2 (Distributed Evolutionary Algorithms in Python) + * [geopandas](https://pypi.org/project/geopandas) 0.14.4 → 1.0.1 (Geographic pandas extensions) + * [hypothesis](https://pypi.org/project/hypothesis) 6.108.5 → 6.122.3 (A library for property-based testing) + * [imbalanced_learn](https://pypi.org/project/imbalanced_learn) 0.12.3 → 0.13.0 (Toolbox for imbalanced dataset in machine learning) + * [ipython](https://pypi.org/project/ipython) 8.26.0 → 8.31.0 (IPython: Productive Interactive Computing) + * [janus](https://pypi.org/project/janus) 1.0.0 → 2.0.0 (Mixed sync-async queue to interoperate between asyncio tasks and classic threads) + * [jaraco_context](https://pypi.org/project/jaraco_context) 5.3.0 → 6.0.1 (Useful decorators and context managers) + * [jaraco_functools](https://pypi.org/project/jaraco_functools) 4.0.1 → 4.1.0 (Functools like those found in stdlib) + * [jedi](https://pypi.org/project/jedi) 0.19.1 → 0.19.2 (An autocompletion tool for Python that can be used for text editors.) + * [keras](https://pypi.org/project/keras) 3.7.0 → 3.8.0 (Multi-backend Keras) + * [keyring](https://pypi.org/project/keyring) 25.2.1 → 25.6.0 (Store and access your passwords safely.) + * [llvmlite](https://pypi.org/project/llvmlite) 0.44.0rc2 → 0.44.0 (lightweight wrapper around basic LLVM functionality) + * [maturin](https://pypi.org/project/maturin) 1.7.0 → 1.8.1 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * [mlxtend](https://pypi.org/project/mlxtend) 0.22.0 → 0.23.3 (Machine Learning Library Extensions) + * [narwhals](https://pypi.org/project/narwhals) 1.15.2 → 1.21.1 (Extremely lightweight compatibility layer between dataframe libraries) + * [numba](https://pypi.org/project/numba) 0.61.0rc2 → 0.61.0 (compiling Python code using LLVM) + * [osqp](https://pypi.org/project/osqp) 0.6.7.post1 → 0.6.7.post3 (OSQP: The Operator Splitting QP Solver) + * [pillow](https://pypi.org/project/pillow) 11.0.0 → 11.1.0 (Python Imaging Library (Fork)) + * [polars](https://pypi.org/project/polars) 1.18.0 → 1.20.0 (Blazingly fast DataFrame library) + * [pyarrow](https://pypi.org/project/pyarrow) 18.1.0 → 19.0.0 (Python library for Apache Arrow) + * [pygments](https://pypi.org/project/pygments) 2.18.0 → 2.19.1 (Pygments is a syntax highlighting package written in Python.) + * [pyparsing](https://pypi.org/project/pyparsing) 3.1.2 → 3.2.1 (pyparsing module - Classes and methods to define and execute parsing grammars) + * [pyproj](https://pypi.org/project/pyproj) 3.6.1 → 3.7.0 (Python interface to PROJ (cartographic projections and coordinate transformations library)) + * [qdldl](https://pypi.org/project/qdldl) 0.1.7.post4 → 0.1.7.post5 (QDLDL, a free LDL factorization routine.) + * [qrcode](https://pypi.org/project/qrcode) 7.4.2 → 8.0 (QR Code image generator) + * [requests_ntlm](https://pypi.org/project/requests_ntlm) 1.1.0 → 1.3.0 (This package allows for HTTP NTLM authentication using the requests library.) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.6.0 → 1.6.1 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.14.1 → 1.15.1 (Fundamental algorithms for scientific computing in Python) + * [shapely](https://pypi.org/project/shapely) 2.0.4 → 2.0.6 (Manipulation and analysis of geometric objects) + * [sqlite_utils](https://pypi.org/project/sqlite_utils) 3.37 → 3.38 (CLI tool and Python library for manipulating SQLite databases) + * [sqlparse](https://pypi.org/project/sqlparse) 0.4.3 → 0.5.3 (A non-validating SQL parser.) + * [tifffile](https://pypi.org/project/tifffile) 2024.7.2 → 2025.1.10 (Read and write TIFF files) + * [toolz](https://pypi.org/project/toolz) 0.12.0 → 1.0.0 (List processing tools and functional utilities) + * [tornado](https://pypi.org/project/tornado) 6.4.1 → 6.4.2 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * [trio](https://pypi.org/project/trio) 0.27.0 → 0.28.0 (A friendly Python library for async concurrency and I/O) + * [twine](https://pypi.org/project/twine) 4.0.1 → 6.0.1 (Collection of utilities for publishing packages on PyPI) + * [watchdog](https://pypi.org/project/watchdog) 4.0.1 → 6.0.0 (Filesystem events monitoring) + * [webcolors](https://pypi.org/project/webcolors) 1.12 → 24.11.1 (A library for working with the color formats defined by HTML and CSS.) + * [websockets](https://pypi.org/project/websockets) 13.1 → 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + * [werkzeug](https://pypi.org/project/werkzeug) 3.0.3 → 3.1.3 (The comprehensive WSGI web application library.) + * [whatthepatch](https://pypi.org/project/whatthepatch) 1.0.2 → 1.0.7 (A patch parsing and application library.) + * [wheel](https://pypi.org/project/wheel) 0.44.0 → 0.45.1 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 12.0.20250201 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2024.11.0 → 2025.1.1 (N-D labeled arrays and datasets in Python) + * [zipp](https://pypi.org/project/zipp) 3.17.0 → 3.21.0 (Backport of pathlib-compatible object wrapper for zip files) + +Removed packages: + + * [about_time](https://pypi.org/project/about_time) 4.2.1 (Easily measure timing and throughput of code blocks, with beautiful human friendly representations.) + * [affine](https://pypi.org/project/affine) 2.3.1 (Matrices describing affine transformation of the plane.) + * [alive_progress](https://pypi.org/project/alive_progress) 3.1.5 (A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!) + * [autograd](https://pypi.org/project/autograd) 1.6.2 (Efficiently computes derivatives of numpy code.) + * [cartopy](https://pypi.org/project/cartopy) 0.23.0 (A Python library for cartographic visualizations with Matplotlib) + * [cftime](https://pypi.org/project/cftime) 1.6.3 (Time-handling functionality from netcdf4-python) + * [click_plugins](https://pypi.org/project/click_plugins) 1.1.1 (An extension module for click to enable registering CLI commands via setuptools entry-points.) + * [cligj](https://pypi.org/project/cligj) 0.7.2 (Click params for commmand line interfaces to GeoJSON) + * [clr_loader](https://pypi.org/project/clr_loader) 0.2.6 (Generic pure Python loader for .NET runtimes) + * [clrmagic](https://pypi.org/project/clrmagic) 0.0.1a2 (IPython cell magic to use .NET languages) + * [cma](https://pypi.org/project/cma) 3.2.2 (CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python) + * [deprecated](https://pypi.org/project/deprecated) 1.2.13 (Python @deprecated decorator to deprecate old python classes, functions or methods.) + * [ecos](https://pypi.org/project/ecos) 2.0.13 (This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information.) + * [fiona](https://pypi.org/project/fiona) 1.10.1 (Fiona reads and writes spatial data files) + * [grapheme](https://pypi.org/project/grapheme) 0.6.0 (Unicode grapheme helpers) + * [netcdf4](https://pypi.org/project/netcdf4) 1.7.1.post2 (Provides an object-oriented python interface to the netCDF version 4 library) + * [ntlm_auth](https://pypi.org/project/ntlm_auth) 1.5.0 (Creates NTLM authentication structures) + * [numexpr](https://pypi.org/project/numexpr) 2.10.1 (Fast numerical expression evaluator for NumPy) + * [pulp](https://pypi.org/project/pulp) 2.6.0 (PuLP is an LP modeler written in python) + * [pyaudio](https://pypi.org/project/pyaudio) 0.2.14 (Cross-platform audio I/O with PortAudio) + * [pycosat](https://pypi.org/project/pycosat) 0.6.6 (bindings to picosat (a SAT solver)) + * [pymoo](https://pypi.org/project/pymoo) 0.6.1.3 (Multi-Objective Optimization in Python) + * [pypng](https://pypi.org/project/pypng) 0.20220715.0 (Pure Python library for saving and loading PNG images) + * [pyshp](https://pypi.org/project/pyshp) 2.3.1 (Pure Python read/write support for ESRI Shapefile format) + * [pythonnet](https://pypi.org/project/pythonnet) 3.0.3 (.NET and Mono integration for Python) + * [rasterio](https://pypi.org/project/rasterio) 1.3.10 (Fast and direct raster I/O for use with Numpy and SciPy) + * [snuggs](https://pypi.org/project/snuggs) 1.4.7 (Snuggs are s-expressions for Numpy) + * [wrapt](https://pypi.org/project/wrapt) 1.16.0 (Module for decorators, wrappers and monkey patching.) + * [xlwings](https://pypi.org/project/xlwings) 0.24.7 (Make Excel fly: Interact with Excel from Python and vice versa.) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.12.9.0.md b/changelogs/WinPythonslim-64bit-3.12.9.0.md new file mode 100644 index 00000000..9f11f9cb --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.9.0.md @@ -0,0 +1,511 @@ +## WinPython 3.12.9.0slim + +The following packages are included in WinPython-64bit v3.12.9.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.9 | Python programming language with standard library +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.42.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.7.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.10.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.10.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.6.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.4.0 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.13.12 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.12.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.21 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.9 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2024.12.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.2.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval_type_backport](https://pypi.org/project/eval_type_backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 33.3.1 | Faker is a Python package that generates fake data for you. +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.6 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flit](https://pypi.org/project/flit) | 3.10.1 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.10.1 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.18.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google_auth](https://pypi.org/project/google_auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.5 | Signatures for entire Python programs +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[httpx_sse](https://pypi.org/project/httpx_sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.28.1 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.122.3 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.6 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.32.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 6.0.1 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath_python](https://pypi.org/project/jsonpath_python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.3.5 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.8.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.18 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.3.34 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.3.6 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.2.11 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire_api](https://pypi.org/project/logfire_api) | 3.5.3 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.1 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.14.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.21.1 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.3.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.0 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.1.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.61.1 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.13.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.0 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.11.2 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.24.1 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.22.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.15.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.48 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 19.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.4.8 | ASN.1 types and codecs +[pyasn1_modules](https://pypi.org/project/pyasn1_modules) | 0.2.8 | A collection of ASN.1-based protocols modules. +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic_ai](https://pypi.org/project/pydantic_ai) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs +[pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic_graph](https://pypi.org/project/pydantic_graph) | 0.0.24 | Graph and state machine library +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.8.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.1 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.1.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.16.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.4 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme_renderer](https://pypi.org/project/readme_renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.8 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.5 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.25.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.6 | Manipulation and analysis of geometric objects +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sklearn_compat](https://pypi.org/project/sklearn_compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.35 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.41.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.41.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[sympy](https://pypi.org/project/sympy) | 1.13.3 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.0.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.1.10 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.0 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.1.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.28.0 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.0.1 | Collection of utilities for publishing packages on PyPI +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types_requests](https://pypi.org/project/types_requests) | 2.32.0.20241016 | Typing stubs for requests +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing_inspect](https://pypi.org/project/typing_inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.2.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.0 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 13.1.20250222 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.1.1 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.12.9.0_History.md b/changelogs/WinPythonslim-64bit-3.12.9.0_History.md new file mode 100644 index 00000000..aa21a9ba --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.12.9.0_History.md @@ -0,0 +1,195 @@ +## History of changes for WinPython-64bit 3.12.9.0slim + +The following changes were made to WinPython-64bit distribution since version 3.12.8.0slim. + +
+### Tools + +Removed packages: + + * [Pandoc](https://pandoc.org/) 3.1.9 (a universal document converter) + +### Python packages + +New packages: + + * [cohere](https://pypi.org/project/cohere) 5.13.12 () + * [faker](https://pypi.org/project/faker) 33.3.1 (Faker is a Python package that generates fake data for you.) + * [fastavro](https://pypi.org/project/fastavro) 1.10.0 (Fast read/write of AVRO files) + * [httpx_sse](https://pypi.org/project/httpx_sse) 0.4.0 (Consume Server-Sent Event (SSE) messages with HTTPX.) + * [nh3](https://pypi.org/project/nh3) 0.2.18 (Python bindings to the ammonia HTML sanitization library.) + * [prince](https://pypi.org/project/prince) 0.15.0 (Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA) + * [pydantic_graph](https://pypi.org/project/pydantic_graph) 0.0.24 (Graph and state machine library) + * [pyogrio](https://pypi.org/project/pyogrio) 0.10.0 (Vectorized spatial vector file format I/O using GDAL/OGR) + * [pyspnego](https://pypi.org/project/pyspnego) 0.11.2 (Windows Negotiate Authentication Client and Server) + * [pyusb](https://pypi.org/project/pyusb) 1.3.1 (Easy USB access for Python) + * [pywavelets](https://pypi.org/project/pywavelets) 1.8.0 (PyWavelets, wavelet transform module) + * [sklearn_compat](https://pypi.org/project/sklearn_compat) 0.1.3 (Ease support for compatible scikit-learn estimators across versions) + * [squarify](https://pypi.org/project/squarify) 0.4.4 (Pure Python implementation of the squarify treemap layout algorithm) + * [sspilib](https://pypi.org/project/sspilib) 0.2.0 (SSPI API bindings for Python) + * [thefuzz](https://pypi.org/project/thefuzz) 0.22.1 (Fuzzy string matching in python) + * [tokenizers](https://pypi.org/project/tokenizers) 0.21.0 () + * [types_requests](https://pypi.org/project/types_requests) 2.32.0.20241016 (Typing stubs for requests) + +Upgraded packages: + + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.8 → 1.10.0 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [baresql](https://pypi.org/project/baresql) 0.8.0 → 1.0.0 (playing SQL directly on Python datas) + * [blinker](https://pypi.org/project/blinker) 1.7.0 → 1.9.0 (Fast, simple object-to-object and broadcast signaling) + * [bokeh](https://pypi.org/project/bokeh) 3.6.1 → 3.6.3 (Interactive plots and applications in the browser from Python) + * [clarabel](https://pypi.org/project/clarabel) 0.9.0 → 0.10.0 (Clarabel Conic Interior Point Solver for Rust / Python) + * [cryptography](https://pypi.org/project/cryptography) 41.0.5 → 44.0.0 (cryptography is a package which provides cryptographic recipes and primitives to Python developers.) + * [cytoolz](https://pypi.org/project/cytoolz) 0.12.3 → 1.0.1 (Cython implementation of Toolz: High performance functional utilities) + * [deap](https://pypi.org/project/deap) 1.4.1 → 1.4.2 (Distributed Evolutionary Algorithms in Python) + * [dill](https://pypi.org/project/dill) 0.3.7 → 0.3.9 (serialize all of Python) + * [docutils](https://pypi.org/project/docutils) 0.20.1 → 0.21.2 (Docutils -- Python Documentation Utilities) + * [duckdb](https://pypi.org/project/duckdb) 1.1.3 → 1.2.0 (DuckDB in-process database) + * [flask](https://pypi.org/project/flask) 3.0.3 → 3.1.0 (A simple framework for building complex web applications.) + * [flit](https://pypi.org/project/flit) 3.9.0 → 3.10.1 (A simple packaging tool for simple packages.) + * [flit_core](https://pypi.org/project/flit_core) 3.9.0 → 3.10.1 (Distribution-building parts of Flit. See flit package for more information) + * [geopandas](https://pypi.org/project/geopandas) 0.14.4 → 1.0.1 (Geographic pandas extensions) + * [griffe](https://pypi.org/project/griffe) 1.5.4 → 1.5.5 (Signatures for entire Python programs) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.27.0 → 0.28.1 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypothesis](https://pypi.org/project/hypothesis) 6.108.5 → 6.122.3 (A library for property-based testing) + * [imbalanced_learn](https://pypi.org/project/imbalanced_learn) 0.12.3 → 0.13.0 (Toolbox for imbalanced dataset in machine learning) + * [ipycanvas](https://pypi.org/project/ipycanvas) 0.13.2 → 0.13.3 (Interactive widgets library exposing the browser's Canvas API) + * [ipympl](https://pypi.org/project/ipympl) 0.9.4 → 0.9.6 (Matplotlib Jupyter Extension) + * [ipython](https://pypi.org/project/ipython) 8.26.0 → 8.32.0 (IPython: Productive Interactive Computing) + * [janus](https://pypi.org/project/janus) 1.0.0 → 2.0.0 (Mixed sync-async queue to interoperate between asyncio tasks and classic threads) + * [jaraco_context](https://pypi.org/project/jaraco_context) 5.3.0 → 6.0.1 (Useful decorators and context managers) + * [jaraco_functools](https://pypi.org/project/jaraco_functools) 4.0.1 → 4.1.0 (Functools like those found in stdlib) + * [jedi](https://pypi.org/project/jedi) 0.19.1 → 0.19.2 (An autocompletion tool for Python that can be used for text editors.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.3.4 → 4.3.5 (JupyterLab computational environment) + * [keras](https://pypi.org/project/keras) 3.7.0 → 3.8.0 (Multi-backend Keras) + * [keyring](https://pypi.org/project/keyring) 25.2.1 → 25.6.0 (Store and access your passwords safely.) + * [kiwisolver](https://pypi.org/project/kiwisolver) 1.4.7 → 1.4.8 (A fast implementation of the Cassowary constraint solver) + * [langchain](https://pypi.org/project/langchain) 0.3.13 → 0.3.18 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.3.28 → 0.3.34 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.3.4 → 0.3.6 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.2.6 → 0.2.11 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [llvmlite](https://pypi.org/project/llvmlite) 0.44.0rc2 → 0.44.0 (lightweight wrapper around basic LLVM functionality) + * [logfire_api](https://pypi.org/project/logfire_api) 2.11.0 → 3.5.3 (Shim for the Logfire SDK which does nothing unless Logfire is installed) + * [markupsafe](https://pypi.org/project/markupsafe) 2.1.1 → 3.0.2 (Safely add untrusted strings to HTML/XML markup.) + * [maturin](https://pypi.org/project/maturin) 1.7.0 → 1.8.1 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * [mlxtend](https://pypi.org/project/mlxtend) 0.22.0 → 0.23.3 (Machine Learning Library Extensions) + * [msgpack](https://pypi.org/project/msgpack) 1.0.4 → 1.1.0 (MessagePack serializer) + * [narwhals](https://pypi.org/project/narwhals) 1.15.2 → 1.21.1 (Extremely lightweight compatibility layer between dataframe libraries) + * [numba](https://pypi.org/project/numba) 0.61.0rc2 → 0.61.0 (compiling Python code using LLVM) + * [openai](https://pypi.org/project/openai) 1.58.1 → 1.61.1 (The official Python library for the openai API) + * [osqp](https://pypi.org/project/osqp) 0.6.7.post1 → 0.6.7.post3 (OSQP: The Operator Splitting QP Solver) + * [panel](https://pypi.org/project/panel) 1.5.4 → 1.6.0 (The powerful data exploration & web app framework for Python.) + * [pillow](https://pypi.org/project/pillow) 11.0.0 → 11.1.0 (Python Imaging Library (Fork)) + * [plotpy](https://pypi.org/project/plotpy) 2.7.0 → 2.7.2 (Curve and image plotting tools for Python/Qt applications) + * [polars](https://pypi.org/project/polars) 1.18.0 → 1.22.0 (Blazingly fast DataFrame library) + * [pyarrow](https://pypi.org/project/pyarrow) 18.1.0 → 19.0.0 (Python library for Apache Arrow) + * [pydantic](https://pypi.org/project/pydantic) 2.10.4 → 2.10.6 (Data validation using Python type hints) + * [pydantic_ai](https://pypi.org/project/pydantic_ai) 0.0.15 → 0.0.24 (Agent Framework / shim to use Pydantic with LLMs) + * [pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) 0.0.15 → 0.0.24 (Agent Framework / shim to use Pydantic with LLMs, slim package) + * [pygments](https://pypi.org/project/pygments) 2.18.0 → 2.19.1 (Pygments is a syntax highlighting package written in Python.) + * [pyomo](https://pypi.org/project/pyomo) 6.8.0 → 6.8.2 (Pyomo: Python Optimization Modeling Objects) + * [pyparsing](https://pypi.org/project/pyparsing) 3.1.2 → 3.2.1 (pyparsing module - Classes and methods to define and execute parsing grammars) + * [pypdf](https://pypi.org/project/pypdf) 3.15.2 → 5.1.0 (A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files) + * [pyproj](https://pypi.org/project/pyproj) 3.6.1 → 3.7.0 (Python interface to PROJ (cartographic projections and coordinate transformations library)) + * [pyqt5_sip](https://pypi.org/project/pyqt5_sip) 12.13.0 → 12.16.1 (The sip module support for PyQt5) + * [Python](http://www.python.org/) 3.12.8 → 3.12.9 (Python programming language with standard library) + * [pythonqwt](https://pypi.org/project/pythonqwt) 0.14.2 → 0.14.4 (Qt plotting widgets for Python) + * [qdldl](https://pypi.org/project/qdldl) 0.1.7.post4 → 0.1.7.post5 (QDLDL, a free LDL factorization routine.) + * [qrcode](https://pypi.org/project/qrcode) 7.4.2 → 8.0 (QR Code image generator) + * [readme_renderer](https://pypi.org/project/readme_renderer) 35.0 → 44.0 (readme_renderer is a library for rendering readme descriptions for Warehouse) + * [redis](https://pypi.org/project/redis) 5.0.3 → 5.0.8 (Python client for Redis database and key-value store) + * [reportlab](https://pypi.org/project/reportlab) 4.2.2 → 4.2.5 (The Reportlab Toolkit) + * [requests_ntlm](https://pypi.org/project/requests_ntlm) 1.1.0 → 1.3.0 (This package allows for HTTP NTLM authentication using the requests library.) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.6.0 → 1.6.1 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.14.1 → 1.15.1 (Fundamental algorithms for scientific computing in Python) + * [scramp](https://pypi.org/project/scramp) 1.4.1 → 1.4.5 (An implementation of the SCRAM protocol.) + * [scs](https://pypi.org/project/scs) 3.2.7 → 3.2.7.post2 (Splitting conic solver) + * [shapely](https://pypi.org/project/shapely) 2.0.4 → 2.0.6 (Manipulation and analysis of geometric objects) + * [sounddevice](https://pypi.org/project/sounddevice) 0.4.6 → 0.5.1 (Play and Record Sound with Python) + * [soupsieve](https://pypi.org/project/soupsieve) 2.5 → 2.6 (A modern CSS selector implementation for Beautiful Soup.) + * [sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) 2.0.0 → 3.0.2 (Read the Docs theme for Sphinx) + * [sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) 1.0.8 → 2.0.0 (sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books) + * [sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) 1.0.6 → 2.0.0 (sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents) + * [sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) 2.0.5 → 2.1.0 (sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files) + * [sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) 1.0.7 → 2.0.0 (sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents) + * [sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) 1.1.9 → 2.0.0 (sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle)) + * [sqlite_utils](https://pypi.org/project/sqlite_utils) 3.37 → 3.38 (CLI tool and Python library for manipulating SQLite databases) + * [sqlparse](https://pypi.org/project/sqlparse) 0.4.3 → 0.5.3 (A non-validating SQL parser.) + * [sympy](https://pypi.org/project/sympy) 1.13.2 → 1.13.3 (Computer algebra system (CAS) in Python) + * [tenacity](https://pypi.org/project/tenacity) 8.5.0 → 9.0.0 (Retry code until it succeeds) + * [textdistance](https://pypi.org/project/textdistance) 4.6.2 → 4.6.3 (Compute distance between the two texts.) + * [tifffile](https://pypi.org/project/tifffile) 2024.7.2 → 2025.1.10 (Read and write TIFF files) + * [tinycss2](https://pypi.org/project/tinycss2) 1.3.0 → 1.4.0 (A tiny CSS parser) + * [tomli](https://pypi.org/project/tomli) 2.0.1 → 2.2.1 (A lil' TOML parser) + * [tomli_w](https://pypi.org/project/tomli_w) 1.0.0 → 1.1.0 (A lil' TOML writer) + * [tomlkit](https://pypi.org/project/tomlkit) 0.12.3 → 0.13.2 (Style preserving TOML library) + * [toolz](https://pypi.org/project/toolz) 0.12.0 → 1.0.0 (List processing tools and functional utilities) + * [tornado](https://pypi.org/project/tornado) 6.4.1 → 6.4.2 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * [trio](https://pypi.org/project/trio) 0.27.0 → 0.28.0 (A friendly Python library for async concurrency and I/O) + * [twine](https://pypi.org/project/twine) 4.0.1 → 6.0.1 (Collection of utilities for publishing packages on PyPI) + * [uncertainties](https://pypi.org/project/uncertainties) 3.1.7 → 3.2.2 (calculations with values with uncertainties, error propagation) + * [urllib3](https://pypi.org/project/urllib3) 2.0.3 → 2.2.3 (HTTP library with thread-safe connection pooling, file post, and more.) + * [uvicorn](https://pypi.org/project/uvicorn) 0.30.3 → 0.34.0 (The lightning-fast ASGI server.) + * [watchdog](https://pypi.org/project/watchdog) 4.0.1 → 6.0.0 (Filesystem events monitoring) + * [webcolors](https://pypi.org/project/webcolors) 1.12 → 24.11.1 (A library for working with the color formats defined by HTML and CSS.) + * [websockets](https://pypi.org/project/websockets) 13.1 → 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + * [werkzeug](https://pypi.org/project/werkzeug) 3.0.3 → 3.1.3 (The comprehensive WSGI web application library.) + * [whatthepatch](https://pypi.org/project/whatthepatch) 1.0.2 → 1.0.7 (A patch parsing and application library.) + * [wheel](https://pypi.org/project/wheel) 0.44.0 → 0.45.1 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 13.1.20250222 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2024.11.0 → 2025.1.1 (N-D labeled arrays and datasets in Python) + * [zipp](https://pypi.org/project/zipp) 3.17.0 → 3.21.0 (Backport of pathlib-compatible object wrapper for zip files) + +Removed packages: + + * [about_time](https://pypi.org/project/about_time) 4.2.1 (Easily measure timing and throughput of code blocks, with beautiful human friendly representations.) + * [adodbapi](https://pypi.org/project/adodbapi) 2.6.1.3 (A pure Python package implementing PEP 249 DB-API using Microsoft ADO.) + * [affine](https://pypi.org/project/affine) 2.3.1 (Matrices describing affine transformation of the plane.) + * [alive_progress](https://pypi.org/project/alive_progress) 3.1.5 (A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!) + * [autograd](https://pypi.org/project/autograd) 1.6.2 (Efficiently computes derivatives of numpy code.) + * [cachelib](https://pypi.org/project/cachelib) 0.13.0 (A collection of cache libraries in the same API interface.) + * [cartopy](https://pypi.org/project/cartopy) 0.23.0 (A Python library for cartographic visualizations with Matplotlib) + * [cftime](https://pypi.org/project/cftime) 1.6.3 (Time-handling functionality from netcdf4-python) + * [click_plugins](https://pypi.org/project/click_plugins) 1.1.1 (An extension module for click to enable registering CLI commands via setuptools entry-points.) + * [cligj](https://pypi.org/project/cligj) 0.7.2 (Click params for commmand line interfaces to GeoJSON) + * [clr_loader](https://pypi.org/project/clr_loader) 0.2.6 (Generic pure Python loader for .NET runtimes) + * [clrmagic](https://pypi.org/project/clrmagic) 0.0.1a2 (IPython cell magic to use .NET languages) + * [cma](https://pypi.org/project/cma) 3.2.2 (CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python) + * [db_py](https://pypi.org/project/db_py) 0.5.4b1 (a db package that doesn't suck) + * [deprecated](https://pypi.org/project/deprecated) 1.2.13 (Python @deprecated decorator to deprecate old python classes, functions or methods.) + * [docopt](https://pypi.org/project/docopt) 0.6.2 (Pythonic argument parser, that will make you smile) + * [ecos](https://pypi.org/project/ecos) 2.0.13 (This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information.) + * [filterpy](https://pypi.org/project/filterpy) 1.4.5 (Kalman filtering and optimal estimation library) + * [fiona](https://pypi.org/project/fiona) 1.10.1 (Fiona reads and writes spatial data files) + * [flask_mail](https://pypi.org/project/flask_mail) 0.9.1 (Flask extension for sending email) + * [flask_session](https://pypi.org/project/flask_session) 0.5.0 (Server-side session support for Flask) + * [flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) 3.0.5 (Add SQLAlchemy support to your Flask application.) + * [formlayout](https://pypi.org/project/formlayout) 1.2.1a1 (The most easy way to create Qt form dialogs and widgets with Python) + * [future](https://pypi.org/project/future) 0.18.2 (Clean single-source support for Python 3 and 2) + * [grapheme](https://pypi.org/project/grapheme) 0.6.0 (Unicode grapheme helpers) + * [netcdf4](https://pypi.org/project/netcdf4) 1.7.1.post2 (Provides an object-oriented python interface to the netCDF version 4 library) + * [ntlm_auth](https://pypi.org/project/ntlm_auth) 1.5.0 (Creates NTLM authentication structures) + * [numexpr](https://pypi.org/project/numexpr) 2.10.1 (Fast numerical expression evaluator for NumPy) + * [pdfrw](https://pypi.org/project/pdfrw) 0.4.post2 (PDF file reader/writer library) + * [ppci](https://pypi.org/project/ppci) 0.5.9 (A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python) + * [pulp](https://pypi.org/project/pulp) 2.6.0 (PuLP is an LP modeler written in python) + * [pyaudio](https://pypi.org/project/pyaudio) 0.2.14 (Cross-platform audio I/O with PortAudio) + * [pybars3](https://pypi.org/project/pybars3) 0.9.7 (Handlebars.js templating for Python 3 and 2) + * [pycosat](https://pypi.org/project/pycosat) 0.6.6 (bindings to picosat (a SAT solver)) + * [pymeta3](https://pypi.org/project/pymeta3) 0.5.1 (Pattern-matching language based on OMeta for Python 3 and 2) + * [pymoo](https://pypi.org/project/pymoo) 0.6.1.3 (Multi-Objective Optimization in Python) + * [pypng](https://pypi.org/project/pypng) 0.20220715.0 (Pure Python library for saving and loading PNG images) + * [pyshp](https://pypi.org/project/pyshp) 2.3.1 (Pure Python read/write support for ESRI Shapefile format) + * [pysimplegui](https://pypi.org/project/pysimplegui) 4.60.4 (Python GUIs for Humans) + * [pythonnet](https://pypi.org/project/pythonnet) 3.0.3 (.NET and Mono integration for Python) + * [pywinusb](https://pypi.org/project/pywinusb) 0.4.2 (A package that simplifies USB/HID communications on windows) + * [rasterio](https://pypi.org/project/rasterio) 1.3.10 (Fast and direct raster I/O for use with Numpy and SciPy) + * [simplegeneric](https://pypi.org/project/simplegeneric) 0.8.1 (Simple generic functions (similar to Python's own len(), pickle.dump(), etc.)) + * [snuggs](https://pypi.org/project/snuggs) 1.4.7 (Snuggs are s-expressions for Numpy) + * [sspyrs](https://pypi.org/project/sspyrs) 0.3 (Lightweight interface for SSRS reports to python) + * [wrapt](https://pypi.org/project/wrapt) 1.16.0 (Module for decorators, wrappers and monkey patching.) + * [xlwings](https://pypi.org/project/xlwings) 0.24.7 (Make Excel fly: Interact with Excel from Python and vice versa.) + * [xmltodict](https://pypi.org/project/xmltodict) 0.13.0 (Makes working with XML feel like you are working with JSON) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.13.1.0.md b/changelogs/WinPythonslim-64bit-3.13.1.0.md new file mode 100644 index 00000000..dfaa9887 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.1.0.md @@ -0,0 +1,504 @@ +## WinPython 3.13.1.0slim + +The following packages are included in WinPython-64bit v3.13.1.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org/) | 3.1.9 | a universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.1 | Python programming language with standard library +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[adodbapi](https://pypi.org/project/adodbapi) | 2.6.1.3 | A pure Python package implementing PEP 249 DB-API using Microsoft ADO. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.42.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.7.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.8 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 0.8.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.10.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.7.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.6.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachelib](https://pypi.org/project/cachelib) | 0.13.0 | A collection of cache libraries in the same API interface. +[cachetools](https://pypi.org/project/cachetools) | 5.4.0 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.9.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 41.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[dask](https://pypi.org/project/dask) | 2024.12.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.21 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[db_py](https://pypi.org/project/db_py) | 0.5.4b1 | a db package that doesn't suck +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.7 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2024.12.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docopt](https://pypi.org/project/docopt) | 0.6.2 | Pythonic argument parser, that will make you smile +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.20.1 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.1.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval_type_backport](https://pypi.org/project/eval_type_backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.6 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[filterpy](https://pypi.org/project/filterpy) | 1.4.5 | Kalman filtering and optimal estimation library +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.0.3 | A simple framework for building complex web applications. +[flask_mail](https://pypi.org/project/flask_mail) | 0.9.1 | Flask extension for sending email +[flask_session](https://pypi.org/project/flask_session) | 0.5.0 | Server-side session support for Flask +[flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) | 3.0.5 | Add SQLAlchemy support to your Flask application. +[flit](https://pypi.org/project/flit) | 3.9.0 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.9.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.18.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[formlayout](https://pypi.org/project/formlayout) | 1.2.1a1 | The most easy way to create Qt form dialogs and widgets with Python +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[future](https://pypi.org/project/future) | 0.18.2 | Clean single-source support for Python 3 and 2 +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google_auth](https://pypi.org/project/google_auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.4 | Signatures for entire Python programs +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.27.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.108.5 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.12.3 | Toolbox for imbalanced dataset in machine learning. +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.2 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.4 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.26.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 1.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 5.3.0 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.0.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.1 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath_python](https://pypi.org/project/jsonpath_python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.3.4 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.7.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.2.1 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.7 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.13 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.3.28 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.3.4 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.2.6 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0rc2 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire_api](https://pypi.org/project/logfire_api) | 2.11.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 2.1.1 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.7.0 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.22.0 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.0.4 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.14.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.15.2 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.3.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[ntlm_auth](https://pypi.org/project/ntlm_auth) | 1.5.0 | Creates NTLM authentication structures +[numba](https://pypi.org/project/numba) | 0.61.0rc2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.1.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.58.1 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.13.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.5.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pdfrw](https://pypi.org/project/pdfrw) | 0.4.post2 | PDF file reader/writer library +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.0.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.11.2 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.24.1 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.0 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.18.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[ppci](https://pypi.org/project/ppci) | 0.5.9 | A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.48 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 18.1.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.4.8 | ASN.1 types and codecs +[pyasn1_modules](https://pypi.org/project/pyasn1_modules) | 0.2.8 | A collection of ASN.1-based protocols modules. +[pybars3](https://pypi.org/project/pybars3) | 0.9.7 | Handlebars.js templating for Python 3 and 2 +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.4 | Data validation using Python type hints +[pydantic_ai](https://pypi.org/project/pydantic_ai) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs +[pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) | 0.0.15 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.18.0 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymeta3](https://pypi.org/project/pymeta3) | 0.5.1 | Pattern-matching language based on OMeta for Python 3 and 2 +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyomo](https://pypi.org/project/pyomo) | 6.8.0 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.1.2 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 3.15.2 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pypng](https://pypi.org/project/pypng) | 0.20220715.0 | Pure Python library for saving and loading PNG images +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.16.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysimplegui](https://pypi.org/project/pysimplegui) | 4.60.4 | Python GUIs for Humans +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.2 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pywinusb](https://pypi.org/project/pywinusb) | 0.4.2 | A package that simplifies USB/HID communications on windows +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qrcode](https://pypi.org/project/qrcode) | 7.4.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme_renderer](https://pypi.org/project/readme_renderer) | 35.0 | readme_renderer is a library for rendering "readme" descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.3 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.1.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.25.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.6.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.14.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.1 | An implementation of the SCRAM protocol. +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[simplegeneric](https://pypi.org/project/simplegeneric) | 0.8.1 | Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.4.6 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.5 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 2.0.0 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 1.0.8 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 1.0.6 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.0.5 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 1.0.7 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 1.1.9 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.35 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.37 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.4.3 | A non-validating SQL parser. +[sspyrs](https://pypi.org/project/sspyrs) | 0.3 | Lightweight interface for SSRS reports to python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.41.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.41.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[sympy](https://pypi.org/project/sympy) | 1.13.2 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 8.5.0 | Retry code until it succeeds +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.2 | Compute distance between the two texts. +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2024.7.2 | Read and write TIFF files +[tinycss2](https://pypi.org/project/tinycss2) | 1.3.0 | A tiny CSS parser +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.0.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.0.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.12.3 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 0.12.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.27.0 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 4.0.1 | Collection of utilities for publishing packages on PyPI +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing_inspect](https://pypi.org/project/typing_inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.1.7 | Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.0.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.30.3 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 4.0.1 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 1.12 | A library for working with color names and color values formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 13.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.0.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.2 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.44.0 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 11.2.20241228 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2024.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xmltodict](https://pypi.org/project/xmltodict) | 0.13.0 | Makes working with XML feel like you are working with JSON +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.17.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.13.1.0_History.md b/changelogs/WinPythonslim-64bit-3.13.1.0_History.md new file mode 100644 index 00000000..f8f8e86d --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.1.0_History.md @@ -0,0 +1,8 @@ +## History of changes for WinPython-64bit 3.13.1.0slim + +The following changes were made to WinPython-64bit distribution since version 3.13.1.0slim. + +
+ +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.13.11.0.md b/changelogs/WinPythonslim-64bit-3.13.11.0.md new file mode 100644 index 00000000..1871cfd8 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.11.0.md @@ -0,0 +1,559 @@ +## WinPython 3.13.11.0slim + +The following packages are included in WinPython-64bit v3.13.11.0slim . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.13.11 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.9.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.13.1 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.4.0 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.17.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 6.0.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-doc](https://pypi.org/project/annotated-doc) | 0.0.3 | Document parameters, class attributes, return types, and variables inline, with Annotated. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.75.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.12.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.21 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.3 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.10.0 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 4.0.2 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.1 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.9.29.0.35.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.4.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.36.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.14.2 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.25.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 5.0.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.14.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.11.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.2.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 6.2.2 | Extensible memoizing collections and decorators +[cattrs](https://pypi.org/project/cattrs) | 1.2.0 | Composable complex class support for attrs. +[certifi](https://pypi.org/project/certifi) | 2025.11.12 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.3 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.11.1 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.3.0 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.2 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.20.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[coloredlogs](https://pypi.org/project/coloredlogs) | 15.0.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.3 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.3 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 46.0.3 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.7.1 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.2.3 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.1.0 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.11.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.2 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.18.2 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.17 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.3.1 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.11.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.8 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-parser](https://pypi.org/project/docstring-parser) | 0.17.0 | Parse Python docstrings in reST, Google and Numpydoc format +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.3.1 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 38.2.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.6.0 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.123.9 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.12.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.2 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.20.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.2 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.20.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.61.0 | Tools to manipulate font files +[foundry-local-sdk](https://pypi.org/project/foundry-local-sdk) | 0.5.1 | Foundry Local Manager Python SDK: Control-plane SDK for Foundry Local. +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.8.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.9.0 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[genai-prices](https://pypi.org/project/genai-prices) | 0.0.38 | Calculate prices for calling LLM inference APIs. +[geographiclib](https://pypi.org/project/geographiclib) | 2.1 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.45 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.43.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.55.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.4 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.14.0 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.37.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.13.4 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.15.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.28.0 | Modern, extensible Python build backend +[hf-xet](https://pypi.org/project/hf-xet) | 1.2.0 | Fast transfer of large files with the Hugging Face Hub. +[holoviews](https://pypi.org/project/holoviews) | 1.22.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 1.2.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.12.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.148.7 | The property-based testing library for Python +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.11 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[invoke](https://pypi.org/project/invoke) | 2.2.1 | Pythonic task execution +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.31.0 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.8 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 9.8.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-pygments-lexers](https://pypi.org/project/ipython-pygments-lexers) | 1.1.1 | Defines a variety of Pygments lexers for highlighting IPython code. +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.8 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.3.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.1 | +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.11.1 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.3 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.1 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.9.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.9.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.3.0 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.17.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.5.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.28.0 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.13.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 1.1.3 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 1.2.0 | Building applications with LLMs through composability +[langgraph](https://pypi.org/project/langgraph) | 1.0.5 | Building stateful, multi-actor applications with LLMs +[langgraph-checkpoint](https://pypi.org/project/langgraph-checkpoint) | 3.0.0 | Library with base interfaces for LangGraph checkpoint savers. +[langgraph-prebuilt](https://pypi.org/project/langgraph-prebuilt) | 1.0.5 | Library with high-level APIs for creating and executing LangGraph agents and tools. +[langgraph-sdk](https://pypi.org/project/langgraph-sdk) | 0.3.0 | SDK for interacting with LangGraph API +[langsmith](https://pypi.org/project/langsmith) | 0.4.59 | Client library to connect to the LangSmith Observability and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[librt](https://pypi.org/project/librt) | 0.6.2 | Mypyc runtime library +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.46.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 4.14.2 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lsprotocol](https://pypi.org/project/lsprotocol) | 2023.0.1 | Python implementation of the Language Server Protocol. +[lxml](https://pypi.org/project/lxml) | 6.0.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[magika](https://pypi.org/project/magika) | 0.6.2 | A tool to determine the content type of a file with deep learning +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.9 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 4.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markdownify](https://pypi.org/project/markdownify) | 1.2.0 | Convert HTML to markdown. +[markitdown](https://pypi.org/project/markitdown) | 0.1.2 | Utility tool for converting various files to Markdown +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.3 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.8 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.2.1 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.10.2 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.21.0 | Model Context Protocol SDK +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.5.0 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.11 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.4 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.14.3 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.3 | ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning. +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.4 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.12 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.2 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.7.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.19.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.5.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.13.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.6.1 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.3.2 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.5.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.63.1 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.5 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[onnxruntime](https://pypi.org/project/onnxruntime) | 1.23.2 | ONNX Runtime is a runtime accelerator for Machine Learning models +[openai](https://pypi.org/project/openai) | 2.11.0 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.17.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.11.4 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ormsgpack](https://pypi.org/project/ormsgpack) | 1.12.0 | +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.8.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.3.1 | Declarative parameters for robust Python classes and a rich API for reactive programming +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.5 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 12.0.0 | Python Imaging Library (fork) +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pipdeptree](https://pypi.org/project/pipdeptree) | 2.30.0 | Command line utility to show dependency tree of packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.5.0 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.5.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.15.2 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.8.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.36.1 | Blazingly fast DataFrame library +[polars-runtime-32](https://pypi.org/project/polars-runtime-32) | 1.36.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.3 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.4.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.33.1 | +[psutil](https://pypi.org/project/psutil) | 7.1.1 | Cross-platform lib for process and system monitoring. +[psycopg2](https://pypi.org/project/psycopg2) | 2.9.11 | psycopg2 - Python-PostgreSQL Database Adapter +[psygnal](https://pypi.org/project/psygnal) | 0.15.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.31 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 22.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.23 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.12.5 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 1.12.0 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.41.5 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 1.12.0 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 1.12.0 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.11.0 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 4.0.4 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.15.3 | PyMongo - the Official MongoDB Python driver +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.6.1 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.3.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.12.1 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.5 | The Pyomo optimization modeling framework +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.5 | pyparsing - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyperclip](https://pypi.org/project/pyperclip) | 1.11.0 | A cross-platform clipboard module for Python. (Only handles plain text for now.) +[pyproj](https://pypi.org/project/pyproj) | 3.7.2 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.14.0 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.16.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-ruff](https://pypi.org/project/python-lsp-ruff) | 2.3.0 | Ruff linting plugin for pylsp +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.14.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.15.0 | Qt plotting widgets for Python +[pytokens](https://pypi.org/project/pytokens) | 0.3.0 | A Fast, spec compliant Python 3.14+ tokenizer that runs on older Pythons. +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.6 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.9.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 311 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 3.0.2 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.3 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.1.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.7.0 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.10.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.14.3 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.37.0 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.10.23 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.5 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.1.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.14.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.27.1 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[ruff](https://pypi.org/project/ruff) | 0.14.7 | An extremely fast Python linter and code formatter, written in Rust. +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.26.0 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.8.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.9 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.2 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.7.0 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.3 | Play and Record Sound with Python +[soundfile](https://pypi.org/project/soundfile) | 0.13.1 | An audio library based on libsndfile, CFFI and NumPy +[soupsieve](https://pypi.org/project/soupsieve) | 2.8 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.1.2 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.1.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.44 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.5.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.50.0 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.6 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.52.2 | A faster way to build and share data apps +[streamlit-bokeh](https://pypi.org/project/streamlit-bokeh) | 3.8.1 | Streamlit component that allows you to render Bokeh charts +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.12.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.22.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.32.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.9.11.17 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.20.1 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typer-slim](https://pypi.org/project/typer-slim) | 0.20.0 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20250822 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.15.0 | Backported and Experimental Type Hints for Python 3.9+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.2 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.11.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.9.post2 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.3 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.5.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uuid-utils](https://pypi.org/project/uuid-utils) | 0.12.0 | Drop-in replacement for Python UUID with bindings in Rust +[uvicorn](https://pypi.org/project/uvicorn) | 0.38.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.2 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.9.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.15 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management +[wrapt](https://pypi.org/project/wrapt) | 2.0.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.9 | A Python module for creating Excel XLSX files. +[xxhash](https://pypi.org/project/xxhash) | 3.6.0 | Python binding for xxHash +[xyzservices](https://pypi.org/project/xyzservices) | 2025.4.0 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.43.0 | A formatter for Python code +[yarl](https://pypi.org/project/yarl) | 1.22.0 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.9.26 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.23.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.25.0 | Zstandard bindings for Python + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonslim-64bit-3.13.2.0.md b/changelogs/WinPythonslim-64bit-3.13.2.0.md new file mode 100644 index 00000000..c0701b8a --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.2.0.md @@ -0,0 +1,511 @@ +## WinPython 3.13.2.0slim + +The following packages are included in WinPython-64bit v3.13.2.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.2 | Python programming language with standard library +[absl_py](https://pypi.org/project/absl_py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc_driver_manager](https://pypi.org/project/adbc_driver_manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.13.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated_types](https://pypi.org/project/annotated_types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.42.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.7.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2_cffi](https://pypi.org/project/argon2_cffi) | 23.1.0 | Argon2 for Python +[argon2_cffi_bindings](https://pypi.org/project/argon2_cffi_bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array_api_compat](https://pypi.org/project/array_api_compat) | 1.10.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi_csrf](https://pypi.org/project/asgi_csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy_iers_data](https://pypi.org/project/astropy_iers_data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async_lru](https://pypi.org/project/async_lru) | 2.0.4 | Simple LRU cache for asyncio +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure_core](https://pypi.org/project/azure_core) | 1.30.2 | Microsoft Azure Core Library for Python +[azure_cosmos](https://pypi.org/project/azure_cosmos) | 4.7.0 | Microsoft Azure Cosmos Client Library for Python +[azure_identity](https://pypi.org/project/azure_identity) | 1.16.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.0.1 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 24.10.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.6.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.4.0 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2024.6.2 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset_normalizer](https://pypi.org/project/charset_normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.7 | Composable command line interface toolkit +[click_default_group](https://pypi.org/project/click_default_group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.0.0 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.13.12 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.0 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.11 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2024.12.1 | Parallel PyData with Task Scheduling +[dask_expr](https://pypi.org/project/dask_expr) | 1.1.21 | High Level Expressions for Dask +[datasette](https://pypi.org/project/datasette) | 0.64.8 | An open source multi-tool for exploring and publishing data +[datasette_graphql](https://pypi.org/project/datasette_graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.16.3 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[diff_match_patch](https://pypi.org/project/diff_match_patch) | 20230430 | Diff Match and Patch +[dill](https://pypi.org/project/dill) | 0.3.9 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2024.12.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docstring_to_markdown](https://pypi.org/project/docstring_to_markdown) | 0.13 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.2.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et_xmlfile](https://pypi.org/project/et_xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval_type_backport](https://pypi.org/project/eval_type_backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.0.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 33.3.1 | Faker is a Python package that generates fake data for you. +[fast_histogram](https://pypi.org/project/fast_histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.6 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.14.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flit](https://pypi.org/project/flit) | 3.10.1 | A simple packaging tool for simple packages. +[flit_core](https://pypi.org/project/flit_core) | 3.10.1 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.18.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google_auth](https://pypi.org/project/google_auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql_core](https://pypi.org/project/graphql_core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql_relay](https://pypi.org/project/graphql_relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.5 | Signatures for entire Python programs +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.0.0 | Pure-Python HPACK header compression +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[httpx_sse](https://pypi.org/project/httpx_sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface_hub](https://pypi.org/project/huggingface_hub) | 0.28.1 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.16.0 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.0.1 | HTTP/2 framing layer for Python +[hypothesis](https://pypi.org/project/hypothesis) | 6.122.3 | A library for property-based testing +[idna](https://pypi.org/project/idna) | 3.7 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.33.1 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced_learn](https://pypi.org/project/imbalanced_learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib_metadata](https://pypi.org/project/importlib_metadata) | 7.1.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.6 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.32.0 | IPython: Productive Interactive Computing +[ipython_genutils](https://pypi.org/project/ipython_genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython_sql](https://pypi.org/project/ipython_sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.5 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco_classes](https://pypi.org/project/jaraco_classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco_context](https://pypi.org/project/jaraco_context) | 6.0.1 | Useful decorators and context managers +[jaraco_functools](https://pypi.org/project/jaraco_functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath_python](https://pypi.org/project/jsonpath_python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema_specifications](https://pypi.org/project/jsonschema_specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter_bokeh](https://pypi.org/project/jupyter_bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter_client](https://pypi.org/project/jupyter_client) | 8.6.2 | Jupyter protocol implementation and client libraries +[jupyter_console](https://pypi.org/project/jupyter_console) | 6.6.3 | Jupyter terminal console +[jupyter_core](https://pypi.org/project/jupyter_core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter_events](https://pypi.org/project/jupyter_events) | 0.10.0 | Jupyter Event System library +[jupyter_leaflet](https://pypi.org/project/jupyter_leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter_lsp](https://pypi.org/project/jupyter_lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter_server](https://pypi.org/project/jupyter_server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter_server_terminals](https://pypi.org/project/jupyter_server_terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.3.5 | JupyterLab computational environment +[jupyterlab_pygments](https://pypi.org/project/jupyterlab_pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab_server](https://pypi.org/project/jupyterlab_server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab_widgets](https://pypi.org/project/jupyterlab_widgets) | 3.0.13 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.8.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.18 | Building applications with LLMs through composability +[langchain_core](https://pypi.org/project/langchain_core) | 0.3.34 | Building applications with LLMs through composability +[langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) | 0.3.6 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.2.11 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy_loader](https://pypi.org/project/lazy_loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify_it_py](https://pypi.org/project/linkify_it_py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire_api](https://pypi.org/project/logfire_api) | 3.5.3 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.5.1 | Python implementation of John Gruber's Markdown. +[markdown_it_py](https://pypi.org/project/markdown_it_py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.0 | Python plotting package +[matplotlib_inline](https://pypi.org/project/matplotlib_inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.1 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit_py_plugins](https://pypi.org/project/mdit_py_plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml_dtypes](https://pypi.org/project/ml_dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more_itertools](https://pypi.org/project/more_itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl_scatter_density](https://pypi.org/project/mpl_scatter_density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal_extensions](https://pypi.org/project/msal_extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mutagen](https://pypi.org/project/mutagen) | 1.47.0 | read and write audio tags for many formats +[mypy](https://pypi.org/project/mypy) | 1.14.0 | Optional static typing for Python +[mypy_extensions](https://pypi.org/project/mypy_extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql_connector_python](https://pypi.org/project/mysql_connector_python) | 8.0.21 | MySQL driver written in Python +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.21.1 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest_asyncio](https://pypi.org/project/nest_asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.3.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook_shim](https://pypi.org/project/notebook_shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.0 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.1.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.61.1 | The official Python library for the openai API +[opencv_python](https://pypi.org/project/opencv_python) | 4.10.0.84 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.13.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.0 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.1.1 | Make your Python code clearer and more reliable by declaring Parameters. +[paramiko](https://pypi.org/project/paramiko) | 2.8.0 | SSH2 protocol library +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pint](https://pypi.org/project/pint) | 0.23 | Physical quantities module +[pip](https://pypi.org/project/pip) | 24.3.1 | The PyPA recommended tool for installing Python packages. +[pkginfo](https://pypi.org/project/pkginfo) | 1.11.2 | Query metadata from sdists / bdists / installed packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.2.2 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 5.24.1 | An open-source, interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.22.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.15.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus_client](https://pypi.org/project/prometheus_client) | 0.18.0 | Python client for the Prometheus monitoring system. +[prompt_toolkit](https://pypi.org/project/prompt_toolkit) | 3.0.48 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure_eval](https://pypi.org/project/pure_eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 19.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.4.8 | ASN.1 types and codecs +[pyasn1_modules](https://pypi.org/project/pyasn1_modules) | 0.2.8 | A collection of ASN.1-based protocols modules. +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pycryptodomex](https://pypi.org/project/pycryptodomex) | 3.20.0 | Cryptographic library for Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic_ai](https://pypi.org/project/pydantic_ai) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs +[pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic_core](https://pypi.org/project/pydantic_core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic_graph](https://pypi.org/project/pydantic_graph) | 0.0.24 | Graph and state machine library +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.8.0 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint_venv](https://pypi.org/project/pylint_venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls_spyder](https://pypi.org/project/pyls_spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.0.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.8.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.5 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.1 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.1.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject_hooks](https://pypi.org/project/pyproject_hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5_qt5](https://pypi.org/project/pyqt5_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5_sip](https://pypi.org/project/pyqt5_sip) | 12.16.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine_qt5](https://pypi.org/project/pyqtwebengine_qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.2.2 | pytest: simple powerful testing with Python +[python_barcode](https://pypi.org/project/python_barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python_dateutil](https://pypi.org/project/python_dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python_dotenv](https://pypi.org/project/python_dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python_json_logger](https://pypi.org/project/python_json_logger) | 2.0.7 | A python library adding a json log formatter +[python_lsp_black](https://pypi.org/project/python_lsp_black) | 2.0.0 | Black plugin for the Python LSP Server +[python_lsp_jsonrpc](https://pypi.org/project/python_lsp_jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python_lsp_server](https://pypi.org/project/python_lsp_server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python_multipart](https://pypi.org/project/python_multipart) | 0.0.9 | A streaming multipart parser for Python +[python_slugify](https://pypi.org/project/python_slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.4 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.1 | World timezone definitions, modern and historical +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz_comms](https://pypi.org/project/pyviz_comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32_ctypes](https://pypi.org/project/pywin32_ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.3.1 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.5.2 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.19.4 | A Python ASGI web microframework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme_renderer](https://pypi.org/project/readme_renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.8 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.5 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests_ntlm](https://pypi.org/project/requests_ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests_toolbelt](https://pypi.org/project/requests_toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339_validator](https://pypi.org/project/rfc3339_validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986_validator](https://pypi.org/project/rfc3986_validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds_py](https://pypi.org/project/rpds_py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.1.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.1.1 | Reactive Extensions (Rx) for Python +[scikit_image](https://pypi.org/project/scikit_image) | 0.25.0 | Image processing in Python +[scikit_learn](https://pypi.org/project/scikit_learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.1 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.2 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.6.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.6 | Manipulation and analysis of geometric objects +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.0.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sklearn_compat](https://pypi.org/project/sklearn_compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib_jquery](https://pypi.org/project/sphinxcontrib_jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib_jsmath](https://pypi.org/project/sphinxcontrib_jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 5.5.6 | The Scientific Python Development Environment +[spyder_kernels](https://pypi.org/project/spyder_kernels) | 2.5.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.35 | Database Abstraction Library +[sqlite_bro](https://pypi.org/project/sqlite_bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite_fts4](https://pypi.org/project/sqlite_fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite_utils](https://pypi.org/project/sqlite_utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack_data](https://pypi.org/project/stack_data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.41.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.41.1 | A faster way to build and share data apps +[streamz](https://pypi.org/project/streamz) | 0.6.3 | Streams +[sympy](https://pypi.org/project/sympy) | 1.13.3 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.0.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text_unidecode](https://pypi.org/project/text_unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three_merge](https://pypi.org/project/three_merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.1.10 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.0 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli_w](https://pypi.org/project/tomli_w) | 1.1.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.28.0 | A friendly Python library for async concurrency and I/O +[trove_classifiers](https://pypi.org/project/trove_classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.0.1 | Collection of utilities for publishing packages on PyPI +[types_python_dateutil](https://pypi.org/project/types_python_dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types_requests](https://pypi.org/project/types_requests) | 2.32.0.20241016 | Typing stubs for requests +[typing_extensions](https://pypi.org/project/typing_extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing_inspect](https://pypi.org/project/typing_inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc_micro_py](https://pypi.org/project/uc_micro_py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap_learn](https://pypi.org/project/umap_learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri_template](https://pypi.org/project/uri_template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.2.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.0 | The lightning-fast ASGI server. +[vega_datasets](https://pypi.org/project/vega_datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket_client](https://pypi.org/project/websocket_client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.13 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 13.1.20250222 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.1.1 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt_dlp](https://pypi.org/project/yt_dlp) | 2023.7.6 | A youtube-dl fork with additional features and patches +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.13.2.0_History.md b/changelogs/WinPythonslim-64bit-3.13.2.0_History.md new file mode 100644 index 00000000..5fdad5b4 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.2.0_History.md @@ -0,0 +1,170 @@ +## History of changes for WinPython-64bit 3.13.2.0slim + +The following changes were made to WinPython-64bit distribution since version 3.13.1.0slim. + +
+### Tools + +Removed packages: + + * [Pandoc](https://pandoc.org/) 3.1.9 (a universal document converter) + +### Python packages + +New packages: + + * [cohere](https://pypi.org/project/cohere) 5.13.12 () + * [cvxpy](https://pypi.org/project/cvxpy) 1.6.0 (A domain-specific language for modeling convex optimization problems in Python.) + * [cytoolz](https://pypi.org/project/cytoolz) 1.0.1 (Cython implementation of Toolz: High performance functional utilities) + * [deap](https://pypi.org/project/deap) 1.4.2 (Distributed Evolutionary Algorithms in Python) + * [faker](https://pypi.org/project/faker) 33.3.1 (Faker is a Python package that generates fake data for you.) + * [fastavro](https://pypi.org/project/fastavro) 1.10.0 (Fast read/write of AVRO files) + * [geopandas](https://pypi.org/project/geopandas) 1.0.1 (Geographic pandas extensions) + * [httpx_sse](https://pypi.org/project/httpx_sse) 0.4.0 (Consume Server-Sent Event (SSE) messages with HTTPX.) + * [nh3](https://pypi.org/project/nh3) 0.2.18 (Python bindings to the ammonia HTML sanitization library.) + * [osqp](https://pypi.org/project/osqp) 0.6.7.post3 (OSQP: The Operator Splitting QP Solver) + * [prince](https://pypi.org/project/prince) 0.15.0 (Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA) + * [pydantic_graph](https://pypi.org/project/pydantic_graph) 0.0.24 (Graph and state machine library) + * [pyogrio](https://pypi.org/project/pyogrio) 0.10.0 (Vectorized spatial vector file format I/O using GDAL/OGR) + * [pyproj](https://pypi.org/project/pyproj) 3.7.0 (Python interface to PROJ (cartographic projections and coordinate transformations library)) + * [pyspnego](https://pypi.org/project/pyspnego) 0.11.2 (Windows Negotiate Authentication Client and Server) + * [pyusb](https://pypi.org/project/pyusb) 1.3.1 (Easy USB access for Python) + * [pywavelets](https://pypi.org/project/pywavelets) 1.8.0 (PyWavelets, wavelet transform module) + * [qdldl](https://pypi.org/project/qdldl) 0.1.7.post5 (QDLDL, a free LDL factorization routine.) + * [scs](https://pypi.org/project/scs) 3.2.7.post2 (Splitting conic solver) + * [shapely](https://pypi.org/project/shapely) 2.0.6 (Manipulation and analysis of geometric objects) + * [sklearn_compat](https://pypi.org/project/sklearn_compat) 0.1.3 (Ease support for compatible scikit-learn estimators across versions) + * [squarify](https://pypi.org/project/squarify) 0.4.4 (Pure Python implementation of the squarify treemap layout algorithm) + * [sspilib](https://pypi.org/project/sspilib) 0.2.0 (SSPI API bindings for Python) + * [termcolor](https://pypi.org/project/termcolor) 2.5.0 (ANSI color formatting for output in terminal) + * [thefuzz](https://pypi.org/project/thefuzz) 0.22.1 (Fuzzy string matching in python) + * [tiktoken](https://pypi.org/project/tiktoken) 0.8.0 (tiktoken is a fast BPE tokeniser for use with OpenAI's models) + * [tokenizers](https://pypi.org/project/tokenizers) 0.21.0 () + * [types_requests](https://pypi.org/project/types_requests) 2.32.0.20241016 (Typing stubs for requests) + +Upgraded packages: + + * [array_api_compat](https://pypi.org/project/array_api_compat) 1.8 → 1.10.0 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [baresql](https://pypi.org/project/baresql) 0.8.0 → 1.0.0 (playing SQL directly on Python datas) + * [blinker](https://pypi.org/project/blinker) 1.7.0 → 1.9.0 (Fast, simple object-to-object and broadcast signaling) + * [bokeh](https://pypi.org/project/bokeh) 3.6.1 → 3.6.3 (Interactive plots and applications in the browser from Python) + * [clarabel](https://pypi.org/project/clarabel) 0.9.0 → 0.10.0 (Clarabel Conic Interior Point Solver for Rust / Python) + * [cryptography](https://pypi.org/project/cryptography) 41.0.5 → 44.0.0 (cryptography is a package which provides cryptographic recipes and primitives to Python developers.) + * [dill](https://pypi.org/project/dill) 0.3.7 → 0.3.9 (serialize all of Python) + * [docutils](https://pypi.org/project/docutils) 0.20.1 → 0.21.2 (Docutils -- Python Documentation Utilities) + * [duckdb](https://pypi.org/project/duckdb) 1.1.3 → 1.2.0 (DuckDB in-process database) + * [flask](https://pypi.org/project/flask) 3.0.3 → 3.1.0 (A simple framework for building complex web applications.) + * [flit](https://pypi.org/project/flit) 3.9.0 → 3.10.1 (A simple packaging tool for simple packages.) + * [flit_core](https://pypi.org/project/flit_core) 3.9.0 → 3.10.1 (Distribution-building parts of Flit. See flit package for more information) + * [griffe](https://pypi.org/project/griffe) 1.5.4 → 1.5.5 (Signatures for entire Python programs) + * [huggingface_hub](https://pypi.org/project/huggingface_hub) 0.27.0 → 0.28.1 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypothesis](https://pypi.org/project/hypothesis) 6.108.5 → 6.122.3 (A library for property-based testing) + * [imbalanced_learn](https://pypi.org/project/imbalanced_learn) 0.12.3 → 0.13.0 (Toolbox for imbalanced dataset in machine learning) + * [ipycanvas](https://pypi.org/project/ipycanvas) 0.13.2 → 0.13.3 (Interactive widgets library exposing the browser's Canvas API) + * [ipympl](https://pypi.org/project/ipympl) 0.9.4 → 0.9.6 (Matplotlib Jupyter Extension) + * [ipython](https://pypi.org/project/ipython) 8.26.0 → 8.32.0 (IPython: Productive Interactive Computing) + * [janus](https://pypi.org/project/janus) 1.0.0 → 2.0.0 (Mixed sync-async queue to interoperate between asyncio tasks and classic threads) + * [jaraco_context](https://pypi.org/project/jaraco_context) 5.3.0 → 6.0.1 (Useful decorators and context managers) + * [jaraco_functools](https://pypi.org/project/jaraco_functools) 4.0.1 → 4.1.0 (Functools like those found in stdlib) + * [jedi](https://pypi.org/project/jedi) 0.19.1 → 0.19.2 (An autocompletion tool for Python that can be used for text editors.) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.3.4 → 4.3.5 (JupyterLab computational environment) + * [keras](https://pypi.org/project/keras) 3.7.0 → 3.8.0 (Multi-backend Keras) + * [keyring](https://pypi.org/project/keyring) 25.2.1 → 25.6.0 (Store and access your passwords safely.) + * [kiwisolver](https://pypi.org/project/kiwisolver) 1.4.7 → 1.4.8 (A fast implementation of the Cassowary constraint solver) + * [langchain](https://pypi.org/project/langchain) 0.3.13 → 0.3.18 (Building applications with LLMs through composability) + * [langchain_core](https://pypi.org/project/langchain_core) 0.3.28 → 0.3.34 (Building applications with LLMs through composability) + * [langchain_text_splitters](https://pypi.org/project/langchain_text_splitters) 0.3.4 → 0.3.6 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.2.6 → 0.2.11 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [llvmlite](https://pypi.org/project/llvmlite) 0.44.0rc2 → 0.44.0 (lightweight wrapper around basic LLVM functionality) + * [logfire_api](https://pypi.org/project/logfire_api) 2.11.0 → 3.5.3 (Shim for the Logfire SDK which does nothing unless Logfire is installed) + * [markupsafe](https://pypi.org/project/markupsafe) 2.1.1 → 3.0.2 (Safely add untrusted strings to HTML/XML markup.) + * [maturin](https://pypi.org/project/maturin) 1.7.0 → 1.8.1 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * [mlxtend](https://pypi.org/project/mlxtend) 0.22.0 → 0.23.3 (Machine Learning Library Extensions) + * [msgpack](https://pypi.org/project/msgpack) 1.0.4 → 1.1.0 (MessagePack serializer) + * [narwhals](https://pypi.org/project/narwhals) 1.15.2 → 1.21.1 (Extremely lightweight compatibility layer between dataframe libraries) + * [numba](https://pypi.org/project/numba) 0.61.0rc2 → 0.61.0 (compiling Python code using LLVM) + * [openai](https://pypi.org/project/openai) 1.58.1 → 1.61.1 (The official Python library for the openai API) + * [panel](https://pypi.org/project/panel) 1.5.4 → 1.6.0 (The powerful data exploration & web app framework for Python.) + * [pillow](https://pypi.org/project/pillow) 11.0.0 → 11.1.0 (Python Imaging Library (Fork)) + * [plotpy](https://pypi.org/project/plotpy) 2.7.0 → 2.7.2 (Curve and image plotting tools for Python/Qt applications) + * [polars](https://pypi.org/project/polars) 1.18.0 → 1.22.0 (Blazingly fast DataFrame library) + * [pyarrow](https://pypi.org/project/pyarrow) 18.1.0 → 19.0.0 (Python library for Apache Arrow) + * [pydantic](https://pypi.org/project/pydantic) 2.10.4 → 2.10.6 (Data validation using Python type hints) + * [pydantic_ai](https://pypi.org/project/pydantic_ai) 0.0.15 → 0.0.24 (Agent Framework / shim to use Pydantic with LLMs) + * [pydantic_ai_slim](https://pypi.org/project/pydantic_ai_slim) 0.0.15 → 0.0.24 (Agent Framework / shim to use Pydantic with LLMs, slim package) + * [pygments](https://pypi.org/project/pygments) 2.18.0 → 2.19.1 (Pygments is a syntax highlighting package written in Python.) + * [pyomo](https://pypi.org/project/pyomo) 6.8.0 → 6.8.2 (Pyomo: Python Optimization Modeling Objects) + * [pyparsing](https://pypi.org/project/pyparsing) 3.1.2 → 3.2.1 (pyparsing module - Classes and methods to define and execute parsing grammars) + * [pypdf](https://pypi.org/project/pypdf) 3.15.2 → 5.1.0 (A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files) + * [Python](http://www.python.org/) 3.13.1 → 3.13.2 (Python programming language with standard library) + * [pythonqwt](https://pypi.org/project/pythonqwt) 0.14.2 → 0.14.4 (Qt plotting widgets for Python) + * [qrcode](https://pypi.org/project/qrcode) 7.4.2 → 8.0 (QR Code image generator) + * [readme_renderer](https://pypi.org/project/readme_renderer) 35.0 → 44.0 (readme_renderer is a library for rendering readme descriptions for Warehouse) + * [redis](https://pypi.org/project/redis) 5.0.3 → 5.0.8 (Python client for Redis database and key-value store) + * [reportlab](https://pypi.org/project/reportlab) 4.2.2 → 4.2.5 (The Reportlab Toolkit) + * [requests_ntlm](https://pypi.org/project/requests_ntlm) 1.1.0 → 1.3.0 (This package allows for HTTP NTLM authentication using the requests library.) + * [scikit_learn](https://pypi.org/project/scikit_learn) 1.6.0 → 1.6.1 (A set of python modules for machine learning and data mining) + * [scipy](https://pypi.org/project/scipy) 1.14.1 → 1.15.1 (Fundamental algorithms for scientific computing in Python) + * [scramp](https://pypi.org/project/scramp) 1.4.1 → 1.4.5 (An implementation of the SCRAM protocol.) + * [sounddevice](https://pypi.org/project/sounddevice) 0.4.6 → 0.5.1 (Play and Record Sound with Python) + * [soupsieve](https://pypi.org/project/soupsieve) 2.5 → 2.6 (A modern CSS selector implementation for Beautiful Soup.) + * [sphinx_rtd_theme](https://pypi.org/project/sphinx_rtd_theme) 2.0.0 → 3.0.2 (Read the Docs theme for Sphinx) + * [sphinxcontrib_applehelp](https://pypi.org/project/sphinxcontrib_applehelp) 1.0.8 → 2.0.0 (sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books) + * [sphinxcontrib_devhelp](https://pypi.org/project/sphinxcontrib_devhelp) 1.0.6 → 2.0.0 (sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents) + * [sphinxcontrib_htmlhelp](https://pypi.org/project/sphinxcontrib_htmlhelp) 2.0.5 → 2.1.0 (sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files) + * [sphinxcontrib_qthelp](https://pypi.org/project/sphinxcontrib_qthelp) 1.0.7 → 2.0.0 (sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents) + * [sphinxcontrib_serializinghtml](https://pypi.org/project/sphinxcontrib_serializinghtml) 1.1.9 → 2.0.0 (sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle)) + * [sqlite_utils](https://pypi.org/project/sqlite_utils) 3.37 → 3.38 (CLI tool and Python library for manipulating SQLite databases) + * [sqlparse](https://pypi.org/project/sqlparse) 0.4.3 → 0.5.3 (A non-validating SQL parser.) + * [sympy](https://pypi.org/project/sympy) 1.13.2 → 1.13.3 (Computer algebra system (CAS) in Python) + * [tenacity](https://pypi.org/project/tenacity) 8.5.0 → 9.0.0 (Retry code until it succeeds) + * [textdistance](https://pypi.org/project/textdistance) 4.6.2 → 4.6.3 (Compute distance between the two texts.) + * [tifffile](https://pypi.org/project/tifffile) 2024.7.2 → 2025.1.10 (Read and write TIFF files) + * [tinycss2](https://pypi.org/project/tinycss2) 1.3.0 → 1.4.0 (A tiny CSS parser) + * [tomli](https://pypi.org/project/tomli) 2.0.1 → 2.2.1 (A lil' TOML parser) + * [tomli_w](https://pypi.org/project/tomli_w) 1.0.0 → 1.1.0 (A lil' TOML writer) + * [tomlkit](https://pypi.org/project/tomlkit) 0.12.3 → 0.13.2 (Style preserving TOML library) + * [toolz](https://pypi.org/project/toolz) 0.12.0 → 1.0.0 (List processing tools and functional utilities) + * [tornado](https://pypi.org/project/tornado) 6.4.1 → 6.4.2 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * [trio](https://pypi.org/project/trio) 0.27.0 → 0.28.0 (A friendly Python library for async concurrency and I/O) + * [twine](https://pypi.org/project/twine) 4.0.1 → 6.0.1 (Collection of utilities for publishing packages on PyPI) + * [uncertainties](https://pypi.org/project/uncertainties) 3.1.7 → 3.2.2 (calculations with values with uncertainties, error propagation) + * [urllib3](https://pypi.org/project/urllib3) 2.0.3 → 2.2.3 (HTTP library with thread-safe connection pooling, file post, and more.) + * [uvicorn](https://pypi.org/project/uvicorn) 0.30.3 → 0.34.0 (The lightning-fast ASGI server.) + * [watchdog](https://pypi.org/project/watchdog) 4.0.1 → 6.0.0 (Filesystem events monitoring) + * [webcolors](https://pypi.org/project/webcolors) 1.12 → 24.11.1 (A library for working with the color formats defined by HTML and CSS.) + * [websockets](https://pypi.org/project/websockets) 13.1 → 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + * [werkzeug](https://pypi.org/project/werkzeug) 3.0.3 → 3.1.3 (The comprehensive WSGI web application library.) + * [whatthepatch](https://pypi.org/project/whatthepatch) 1.0.2 → 1.0.7 (A patch parsing and application library.) + * [wheel](https://pypi.org/project/wheel) 0.44.0 → 0.45.1 (A built-package format for Python) + * [winpython](https://pypi.org/project/winpython) 11.2.20241228 → 13.1.20250222 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2024.11.0 → 2025.1.1 (N-D labeled arrays and datasets in Python) + * [zipp](https://pypi.org/project/zipp) 3.17.0 → 3.21.0 (Backport of pathlib-compatible object wrapper for zip files) + +Removed packages: + + * [adodbapi](https://pypi.org/project/adodbapi) 2.6.1.3 (A pure Python package implementing PEP 249 DB-API using Microsoft ADO.) + * [cachelib](https://pypi.org/project/cachelib) 0.13.0 (A collection of cache libraries in the same API interface.) + * [db_py](https://pypi.org/project/db_py) 0.5.4b1 (a db package that doesn't suck) + * [docopt](https://pypi.org/project/docopt) 0.6.2 (Pythonic argument parser, that will make you smile) + * [filterpy](https://pypi.org/project/filterpy) 1.4.5 (Kalman filtering and optimal estimation library) + * [flask_mail](https://pypi.org/project/flask_mail) 0.9.1 (Flask extension for sending email) + * [flask_session](https://pypi.org/project/flask_session) 0.5.0 (Server-side session support for Flask) + * [flask_sqlalchemy](https://pypi.org/project/flask_sqlalchemy) 3.0.5 (Add SQLAlchemy support to your Flask application.) + * [formlayout](https://pypi.org/project/formlayout) 1.2.1a1 (The most easy way to create Qt form dialogs and widgets with Python) + * [future](https://pypi.org/project/future) 0.18.2 (Clean single-source support for Python 3 and 2) + * [ntlm_auth](https://pypi.org/project/ntlm_auth) 1.5.0 (Creates NTLM authentication structures) + * [pdfrw](https://pypi.org/project/pdfrw) 0.4.post2 (PDF file reader/writer library) + * [ppci](https://pypi.org/project/ppci) 0.5.9 (A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python) + * [pybars3](https://pypi.org/project/pybars3) 0.9.7 (Handlebars.js templating for Python 3 and 2) + * [pymeta3](https://pypi.org/project/pymeta3) 0.5.1 (Pattern-matching language based on OMeta for Python 3 and 2) + * [pypng](https://pypi.org/project/pypng) 0.20220715.0 (Pure Python library for saving and loading PNG images) + * [pysimplegui](https://pypi.org/project/pysimplegui) 4.60.4 (Python GUIs for Humans) + * [pywinusb](https://pypi.org/project/pywinusb) 0.4.2 (A package that simplifies USB/HID communications on windows) + * [simplegeneric](https://pypi.org/project/simplegeneric) 0.8.1 (Simple generic functions (similar to Python's own len(), pickle.dump(), etc.)) + * [sspyrs](https://pypi.org/project/sspyrs) 0.3 (Lightweight interface for SSRS reports to python) + * [xmltodict](https://pypi.org/project/xmltodict) 0.13.0 (Makes working with XML feel like you are working with JSON) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.13.3.0.md b/changelogs/WinPythonslim-64bit-3.13.3.0.md new file mode 100644 index 00000000..3cc4c6b7 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.3.0.md @@ -0,0 +1,515 @@ +## WinPython 3.13.3.0slim + +The following packages are included in WinPython-64bit v3.13.3.0slim . + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter + +### Python packages + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.3 | Python programming language with standard library +[absl-py](https://pypi.org/project/absl-py) | 2.0.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.4.4 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.11 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.1 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[aniso8601](https://pypi.org/project/aniso8601) | 9.0.1 | A library for parsing ISO 8601 strings. +[annotated-types](https://pypi.org/project/annotated-types) | 0.6.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.49.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.8.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.12 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.11.1 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.9 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 0.9.31 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.1.0 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 2.4.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.4 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 23.2.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.16.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.12.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.1.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.2 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.0 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.0 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.13.12 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.8.2 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.1 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.0.12 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.3.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.17.0 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.0 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.1.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.3.9 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.3.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.8.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.0.7 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.6.1 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.15 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.2.2 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 36.1.1 | Faker is a Python package that generates fake data for you. +[fast-histogram](https://pypi.org/project/fast-histogram) | 0.14 | Fast simple 1D and 2D histograms +[fastapi](https://pypi.org/project/fastapi) | 0.115.8 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.18.0 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.17.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.10.1 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.10.1 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.55.3 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2024.6.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.10 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.32 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.37.0 | Google Authentication Library +[graphene](https://pypi.org/project/graphene) | 3.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.3 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.5.5 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.13.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.7.1 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.1.0 | HTTP/2 State-Machine based protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.5 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.27.2 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.29.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.0.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.0.2 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.34.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.2 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.8.2 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.9.14 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpath-python](https://pypi.org/project/jsonpath-python) | 1.0.6 | A more powerful JSONPath implementation in modern python +[jsonpointer](https://pypi.org/project/jsonpointer) | 2.4 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.19.2 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2023.12.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.14.2 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.9.2 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.23 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.51 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.24 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.2 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.1 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.5.3 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.5 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 2.2.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.1 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.1 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.3.5 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.1 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.2.5 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 2.0.5 | A sane Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.0 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.2.0 | More routines for operating on iterables, beyond itertools +[mpl-scatter-density](https://pypi.org/project/mpl-scatter-density) | 0.7 | Matplotlib helpers to make density scatter plots +[mpld3](https://pypi.org/project/mpld3) | 0.5.8 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.1.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.2.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.30.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.0 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.1 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.0 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.4 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.6.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.72.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.2 | A Python library to read/write Excel 2010 xlsx/xlsm files +[optree](https://pypi.org/project/optree) | 0.14.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 3.6.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.12 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.0 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.2 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.2.0 | Make your Python code clearer and more reliable by declaring Parameters. +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.0 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.11.0 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 0.5.6 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.8.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.23.0 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.0.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.6 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.27.1 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.3.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.15.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.50 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.2.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 5.27.3 | +[psutil](https://pypi.org/project/psutil) | 5.9.8 | Cross-platform lib for process and system monitoring in Python. +[psygnal](https://pypi.org/project/psygnal) | 0.11.1 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.2 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 19.0.1 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai](https://pypi.org/project/pydantic-ai) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.0.24 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.0.24 | Graph and state machine library +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.4 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.1.0 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.3 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.12 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.1 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.1 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.1.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.1.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.10 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.16.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.6 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.4 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.0.1 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 2.0.7 | A python library adding a json log formatter +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.9 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.4 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2024.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.3 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 308 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.2 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.14 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.2.1 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.2 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.1 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.9.6 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.0.8 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.35.1 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.2.5 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 13.9.4 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.12.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.22.3 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.3.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.2 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 75.8.2 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.0.6 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.16.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.1 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.0 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.0 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 7.3.7 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.5 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.3 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.38 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.45.3 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.44.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.1 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.13.3 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.0.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.0.0 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 2.5.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.5.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.1.10 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.8.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.0 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.4.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.66.4 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.1 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.29.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2024.10.21.16 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20241016 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.12.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspect](https://pypi.org/project/typing-inspect) | 0.9.0 | Runtime inspection utilities for typing module. +[tzdata](https://pypi.org/project/tzdata) | 2024.1 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.2 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.1 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.6 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.2.3 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 15.3.20250425 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.3.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.1.9 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + +
diff --git a/changelogs/WinPythonslim-64bit-3.13.3.0_History.md b/changelogs/WinPythonslim-64bit-3.13.3.0_History.md new file mode 100644 index 00000000..9767b1e5 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.3.0_History.md @@ -0,0 +1,148 @@ +## History of changes for WinPython-64bit 3.13.3.0slim + +The following changes were made to WinPython-64bit distribution since version 3.13.2.0slim. + +
+ +### Tools + +New packages: + + * [Pandoc](https://pandoc.org) 3.1.9 (an universal document converter) + +### Python packages + +New packages: + + * [asyncssh](https://pypi.org/project/asyncssh) 2.20.0 (AsyncSSH: Asynchronous SSHv2 client and server library) + * [deprecated](https://pypi.org/project/deprecated) 1.2.14 (Python @deprecated decorator to deprecate old python classes, functions or methods.) + * [flexcache](https://pypi.org/project/flexcache) 0.3 (Saves and loads to the cache a transformed versions of a source object.) + * [flexparser](https://pypi.org/project/flexparser) 0.4 (Parsing made fun ... using typing.) + * [id](https://pypi.org/project/id) 1.5.0 (A tool for generating OIDC identities) + * [pygithub](https://pypi.org/project/pygithub) 2.6.1 (Use the full Github API v3) + * [pyuca](https://pypi.org/project/pyuca) 1.2 (a Python implementation of the Unicode Collation Algorithm) + * [shellingham](https://pypi.org/project/shellingham) 1.5.4 (Tool to Detect Surrounding Shell) + * [skrub](https://pypi.org/project/skrub) 0.5.1 (Prepping tables for machine learning) + * [superqt](https://pypi.org/project/superqt) 0.7.1 (Missing widgets and components for PyQt/PySide) + * [sv-ttk](https://pypi.org/project/sv-ttk) 2.6.0 (A gorgeous theme for Tkinter, based on Windows 11's UI) + * [typer](https://pypi.org/project/typer) 0.15.2 (Typer, build great CLIs. Easy to code. Based on Python type hints.) + * [wrapt](https://pypi.org/project/wrapt) 1.16.0 (Module for decorators, wrappers and monkey patching.) + +Upgraded packages: + + * [alembic](https://pypi.org/project/alembic) 1.13.1 → 1.15.1 (A database migration tool for SQLAlchemy.) + * [anthropic](https://pypi.org/project/anthropic) 0.42.0 → 0.49.0 (The official Python library for the anthropic API) + * [anyio](https://pypi.org/project/anyio) 4.7.0 → 4.8.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * [array-api-compat](https://pypi.org/project/array-api-compat) 1.10.0 → 1.11.1 (A wrapper around NumPy and other array libraries to make them compatible with the Array API standard) + * [azure-core](https://pypi.org/project/azure-core) 1.30.2 → 1.32.0 (Microsoft Azure Core Library for Python) + * [azure-cosmos](https://pypi.org/project/azure-cosmos) 4.7.0 → 4.9.0 (Microsoft Azure Cosmos Client Library for Python) + * [azure-identity](https://pypi.org/project/azure-identity) 1.16.1 → 1.21.0 (Microsoft Azure Identity Library for Python) + * [black](https://pypi.org/project/black) 24.10.0 → 25.1.0 (The uncompromising code formatter.) + * [bokeh](https://pypi.org/project/bokeh) 3.6.3 → 3.7.2 (Interactive plots and applications in the browser from Python) + * [cachetools](https://pypi.org/project/cachetools) 5.4.0 → 5.5.2 (Extensible memoizing collections and decorators) + * [certifi](https://pypi.org/project/certifi) 2024.6.2 → 2025.1.31 (Python package for providing Mozilla's CA Bundle.) + * [click](https://pypi.org/project/click) 8.1.7 → 8.1.8 (Composable command line interface toolkit) + * [cloudpickle](https://pypi.org/project/cloudpickle) 3.0.0 → 3.1.1 (Pickler class to extend the standard pickle.Pickler functionality) + * [cvxpy](https://pypi.org/project/cvxpy) 1.6.0 → 1.6.4 (A domain-specific language for modeling convex optimization problems in Python.) + * [cython](https://pypi.org/project/cython) 3.0.11 → 3.0.12 (The Cython compiler for writing C extensions in the Python language.) + * [dask](https://pypi.org/project/dask) 2024.12.1 → 2025.3.0 (Parallel PyData with Task Scheduling) + * [datasette](https://pypi.org/project/datasette) 0.64.8 → 0.65.1 (An open source multi-tool for exploring and publishing data) + * [datashader](https://pypi.org/project/datashader) 0.16.3 → 0.17.0 (Data visualization toolchain based on aggregating into a grid) + * [diff-match-patch](https://pypi.org/project/diff-match-patch) 20230430 → 20241021 (Repackaging of Google's Diff Match and Patch libraries.) + * [distributed](https://pypi.org/project/distributed) 2024.12.1 → 2025.3.0 (Distributed scheduler for Dask) + * [docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) 0.13 → 0.15 (On the fly conversion of Python docstrings to markdown) + * [duckdb](https://pypi.org/project/duckdb) 1.2.0 → 1.2.2 (DuckDB in-process database) + * [executing](https://pypi.org/project/executing) 2.0.1 → 2.2.0 (Get the currently executing AST node of a frame, and other information) + * [faker](https://pypi.org/project/faker) 33.3.1 → 36.1.1 (Faker is a Python package that generates fake data for you.) + * [fastapi](https://pypi.org/project/fastapi) 0.115.6 → 0.115.8 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * [filelock](https://pypi.org/project/filelock) 3.14.0 → 3.17.0 (A platform independent file lock.) + * [folium](https://pypi.org/project/folium) 0.18.0 → 0.19.5 (Make beautiful maps with Leaflet.js & Python) + * [holoviews](https://pypi.org/project/holoviews) 1.20.0 → 1.20.2 (A high-level plotting API for the PyData ecosystem built on HoloViews.) + * [hpack](https://pypi.org/project/hpack) 4.0.0 → 4.1.0 (Pure-Python HPACK header encoding) + * [huggingface-hub](https://pypi.org/project/huggingface-hub) 0.28.1 → 0.29.3 (Client library to download and publish models, datasets and other repos on the huggingface.co hub) + * [hypercorn](https://pypi.org/project/hypercorn) 0.16.0 → 0.17.3 (A ASGI Server based on Hyper libraries and inspired by Gunicorn) + * [hyperframe](https://pypi.org/project/hyperframe) 6.0.1 → 6.1.0 (Pure-Python HTTP/2 framing) + * [hypothesis](https://pypi.org/project/hypothesis) 6.122.3 → 6.130.4 (A library for property-based testing) + * [idna](https://pypi.org/project/idna) 3.7 → 3.10 (Internationalized Domain Names in Applications (IDNA)) + * [imageio](https://pypi.org/project/imageio) 2.33.1 → 2.37.0 (Library for reading and writing a wide range of image, video, scientific, and volumetric data formats.) + * [importlib-metadata](https://pypi.org/project/importlib-metadata) 7.1.0 → 8.6.1 (Read metadata from Python packages) + * [ipympl](https://pypi.org/project/ipympl) 0.9.6 → 0.9.7 (Matplotlib Jupyter Extension) + * [ipython](https://pypi.org/project/ipython) 8.32.0 → 8.34.0 (IPython: Productive Interactive Computing) + * [ipywidgets](https://pypi.org/project/ipywidgets) 8.1.5 → 8.1.6 (Jupyter interactive widgets) + * [jupyter-client](https://pypi.org/project/jupyter-client) 8.6.2 → 8.6.3 (Jupyter protocol implementation and client libraries) + * [jupyter-events](https://pypi.org/project/jupyter-events) 0.10.0 → 0.12.0 (Jupyter Event System library) + * [jupyterlab](https://pypi.org/project/jupyterlab) 4.3.5 → 4.4.1 (JupyterLab computational environment) + * [jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) 3.0.13 → 3.0.14 (Jupyter interactive widgets for JupyterLab) + * [keras](https://pypi.org/project/keras) 3.8.0 → 3.9.2 (Multi-backend Keras) + * [langchain](https://pypi.org/project/langchain) 0.3.18 → 0.3.23 (Building applications with LLMs through composability) + * [langchain-core](https://pypi.org/project/langchain-core) 0.3.34 → 0.3.51 (Building applications with LLMs through composability) + * [langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) 0.3.6 → 0.3.8 (LangChain text splitting utilities) + * [langsmith](https://pypi.org/project/langsmith) 0.2.11 → 0.3.24 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * [markdown](https://pypi.org/project/markdown) 3.5.1 → 3.7 (Python implementation of John Gruber's Markdown.) + * [matplotlib](https://pypi.org/project/matplotlib) 3.10.0 → 3.10.1 (Python plotting package) + * [mypy](https://pypi.org/project/mypy) 1.14.0 → 1.15.0 (Optional static typing for Python) + * [mysql-connector-python](https://pypi.org/project/mysql-connector-python) 8.0.21 → 9.2.0 (A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v) + * [narwhals](https://pypi.org/project/narwhals) 1.21.1 → 1.30.0 (Extremely lightweight compatibility layer between dataframe libraries) + * [notebook](https://pypi.org/project/notebook) 7.3.1 → 7.4.0 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * [numba](https://pypi.org/project/numba) 0.61.0 → 0.61.2 (compiling Python code using LLVM) + * [numpy](https://pypi.org/project/numpy) 2.1.3 → 2.2.4 (Fundamental package for array computing in Python) + * [openai](https://pypi.org/project/openai) 1.61.1 → 1.72.0 (The official Python library for the openai API) + * [opencv-python](https://pypi.org/project/opencv-python) 4.10.0.84 → 4.11.0.86 (Wrapper package for OpenCV python bindings.) + * [optree](https://pypi.org/project/optree) 0.13.1 → 0.14.0 (Optimized PyTree Utilities.) + * [panel](https://pypi.org/project/panel) 1.6.0 → 1.6.2 (The powerful data exploration & web app framework for Python.) + * [param](https://pypi.org/project/param) 2.1.1 → 2.2.0 (Make your Python code clearer and more reliable by declaring Parameters.) + * [pip](https://pypi.org/project/pip) 24.3.1 → 25.0.1 (The PyPA recommended tool for installing Python packages.) + * [platformdirs](https://pypi.org/project/platformdirs) 4.2.2 → 4.3.6 (A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.) + * [plotly](https://pypi.org/project/plotly) 5.24.1 → 6.0.1 (An open-source interactive data visualization library for Python) + * [polars](https://pypi.org/project/polars) 1.22.0 → 1.27.1 (Blazingly fast DataFrame library) + * [prometheus-client](https://pypi.org/project/prometheus-client) 0.18.0 → 0.21.1 (Python client for the Prometheus monitoring system.) + * [prompt-toolkit](https://pypi.org/project/prompt-toolkit) 3.0.48 → 3.0.50 (Library for building powerful interactive command lines in Python) + * [pyarrow](https://pypi.org/project/pyarrow) 19.0.0 → 19.0.1 (Python library for Apache Arrow) + * [pyasn1](https://pypi.org/project/pyasn1) 0.4.8 → 0.6.1 (Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)) + * [pyasn1-modules](https://pypi.org/project/pyasn1-modules) 0.2.8 → 0.4.1 (A collection of ASN.1-based protocols modules) + * [pyjwt](https://pypi.org/project/pyjwt) 2.8.0 → 2.10.1 (JSON Web Token implementation in Python) + * [pympler](https://pypi.org/project/pympler) 1.0.1 → 1.1 (A development tool to measure, monitor and analyze the memory behavior of Python objects.) + * [pyomo](https://pypi.org/project/pyomo) 6.8.2 → 6.9.1 (Pyomo: Python Optimization Modeling Objects) + * [pypandoc](https://pypi.org/project/pypandoc) 1.5 → 1.15 (Thin wrapper for pandoc.) + * [pytest](https://pypi.org/project/pytest) 8.2.2 → 8.3.4 (pytest: simple powerful testing with Python) + * [Python](http://www.python.org/) 3.13.2 → 3.13.3 (Python programming language with standard library) + * [pytz](https://pypi.org/project/pytz) 2024.1 → 2024.2 (World timezone definitions, modern and historical) + * [pyzmq](https://pypi.org/project/pyzmq) 26.2.0 → 26.2.1 (Python bindings for 0MQ) + * [qtawesome](https://pypi.org/project/qtawesome) 1.3.1 → 1.4.0 (FontAwesome icons in PyQt and PySide applications) + * [qtconsole](https://pypi.org/project/qtconsole) 5.5.2 → 5.6.1 (Jupyter Qt console) + * [quart](https://pypi.org/project/quart) 0.19.4 → 0.20.0 (A Python ASGI web framework with the same API as Flask) + * [rtree](https://pypi.org/project/rtree) 1.1.0 → 1.3.0 (R-Tree spatial index for Python GIS) + * [rx](https://pypi.org/project/rx) 3.1.1 → 3.2.0 (Reactive Extensions (Rx) for Python) + * [scikit-image](https://pypi.org/project/scikit-image) 0.25.0 → 0.25.2 (Image processing in Python) + * [scipy](https://pypi.org/project/scipy) 1.15.1 → 1.15.2 (Fundamental algorithms for scientific computing in Python) + * [send2trash](https://pypi.org/project/send2trash) 1.8.2 → 1.8.3 (Send file to trash natively under Mac OS X, Windows and Linux) + * [setuptools](https://pypi.org/project/setuptools) 75.6.0 → 75.8.2 (Easily download, build, install, upgrade, and uninstall Python packages) + * [simpy](https://pypi.org/project/simpy) 4.0.1 → 4.1.1 (Event discrete, process based simulation for Python.) + * [spyder](https://pypi.org/project/spyder) 5.5.6 → 6.0.5 (The Scientific Python Development Environment) + * [spyder-kernels](https://pypi.org/project/spyder-kernels) 2.5.2 → 3.0.3 (Jupyter kernels for Spyder's console) + * [sqlalchemy](https://pypi.org/project/sqlalchemy) 2.0.35 → 2.0.38 (Database Abstraction Library) + * [starlette](https://pypi.org/project/starlette) 0.41.3 → 0.45.3 (The little ASGI library that shines.) + * [streamlit](https://pypi.org/project/streamlit) 1.41.1 → 1.44.0 (A faster way to build and share data apps) + * [tomli-w](https://pypi.org/project/tomli-w) 1.1.0 → 1.2.0 (A lil' TOML writer) + * [trio](https://pypi.org/project/trio) 0.28.0 → 0.29.0 (A friendly Python library for async concurrency and I/O) + * [twine](https://pypi.org/project/twine) 6.0.1 → 6.1.0 (Collection of utilities for publishing packages on PyPI) + * [widgetsnbextension](https://pypi.org/project/widgetsnbextension) 4.0.13 → 4.0.14 (Jupyter interactive widgets for Jupyter Notebook) + * [winpython](https://pypi.org/project/winpython) 13.1.20250222 → 15.3.20250425 (WinPython distribution tools, including WPPM) + * [xarray](https://pypi.org/project/xarray) 2025.1.1 → 2025.3.0 (N-D labeled arrays and datasets in Python) + * [yt-dlp](https://pypi.org/project/yt-dlp) 2023.7.6 → 2025.2.19 (A feature-rich command-line audio/video downloader) + +Removed packages: + + * [bcrypt](https://pypi.org/project/bcrypt) 4.0.1 (Modern password hashing for your software and your servers) + * [dask_expr](https://pypi.org/project/dask_expr) 1.1.21 (High Level Expressions for Dask ) + * [mutagen](https://pypi.org/project/mutagen) 1.47.0 (read and write audio tags for many formats) + * [paramiko](https://pypi.org/project/paramiko) 2.8.0 (SSH2 protocol library) + * [pint](https://pypi.org/project/pint) 0.23 (Physical quantities module) + * [pkginfo](https://pypi.org/project/pkginfo) 1.11.2 (Query metadata from sdists / bdists / installed packages.) + * [pycryptodomex](https://pypi.org/project/pycryptodomex) 3.20.0 (Cryptographic library for Python) + * [streamz](https://pypi.org/project/streamz) 0.6.3 (Streams) + * [websockets](https://pypi.org/project/websockets) 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + + +
+* * * diff --git a/changelogs/WinPythonslim-64bit-3.13.5.0.md b/changelogs/WinPythonslim-64bit-3.13.5.0.md new file mode 100644 index 00000000..e20a7b65 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.5.0.md @@ -0,0 +1,528 @@ +## WinPython 3.13.5.0slim + +The following packages are included in WinPython-64bit v3.13.5.0slim 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.13.5 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.2.2 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.51.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.9.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.3 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.15.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.1 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.4.1 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.17.0 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.13 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.4.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.3.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.1.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.115.12 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.18.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.57.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.3.2 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.38.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.16.1 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.2 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.25.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.9.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.20.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.7 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.33.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.2 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.36.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.9.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.10.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.23.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2024.10.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.15.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.2 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.10.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.25 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.59 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.42 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.9 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.3 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.9.3 | Model Context Protocol SDK +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.4.2 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.8.1 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.6.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.4.3 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.2.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.36.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.2 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.6 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.82.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.32.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.16 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.6.3 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.2.0 | Make your Python code clearer and more reliable by declaring Parameters. +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.4 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.31.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.51 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.30.2 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.12.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 20.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.4.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.5 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.4 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.4.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.3.1 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.24.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.0 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.3 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.1.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.7 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.40 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 2.2.1 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.46.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.46.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.3 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.30.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.4.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.3 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + +
diff --git a/changelogs/WinPythonslim-64bit-3.13.5.0_History.md b/changelogs/WinPythonslim-64bit-3.13.5.0_History.md new file mode 100644 index 00000000..894ae809 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.5.0_History.md @@ -0,0 +1,200 @@ +## History of changes for WinPython-64bit 3.13.5.0slim + +The following changes were made to WinPython-64bit distribution since version 3.13.3.0slim. + + +
+ +### Tools + + +New packages: + * Python 3.13.5 (Python programming language with standard library) + +### Python packages + + +New packages: + * argcomplete 3.6.2 (Bash tab completion for argparse) + * bcrypt 4.3.0 (Modern password hashing for your software and your servers) + * fasta2a 0.2.9 (Convert an AI Agent into a A2A server! ✨) + * google-genai 1.16.1 (GenAI Python SDK) + * mcp 1.9.3 (Model Context Protocol SDK) + * opentelemetry-api 1.32.1 (OpenTelemetry Python API) + * pydantic-evals 0.2.9 (Framework for evaluating stochastic code execution, especially code making use of LLMs) + * pydantic-settings 2.8.1 (Settings management using Pydantic) + * sse-starlette 2.2.1 (SSE plugin for Starlette) + * typing-inspection 0.4.0 (Runtime typing introspection tools) + * websockets 14.2 (An implementation of the WebSocket Protocol (RFC 6455 & 7692)) + +Upgraded packages: + * aiohappyeyeballs 2.4.4 → 2.6.1 (Happy Eyeballs for asyncio) + * aiohttp 3.11.11 → 3.11.18 (Async http client/server framework (asyncio)) + * aiosignal 1.3.1 → 1.3.2 (aiosignal: a list of registered asynchronous callbacks) + * alembic 1.15.1 → 1.15.2 (A database migration tool for SQLAlchemy.) + * anthropic 0.49.0 → 0.51.0 (The official Python library for the anthropic API) + * anyio 4.8.0 → 4.9.0 (High level compatibility layer for multiple asynchronous event loop implementations) + * anywidget 0.9.12 → 0.9.18 (custom jupyter widgets made easy) + * asteval 0.9.31 → 1.0.5 (Safe, minimalistic evaluator of python expression using ast module) + * astroid 3.1.0 → 3.3.9 (An abstract syntax tree for Python with inference support.) + * asttokens 2.4.1 → 3.0.0 (Annotate AST trees with source code positions) + * attrs 23.2.0 → 25.3.0 (Classes Without Boilerplate) + * babel 2.16.0 → 2.17.0 (Internationalization utilities) + * beautifulsoup4 4.12.2 → 4.13.3 (Screen-scraping library) + * bleach 6.1.0 → 6.2.0 (An easy safelist-based HTML-sanitizing tool.) + * bokeh 3.7.2 → 3.7.3 (Interactive plots and applications in the browser from Python) + * branca 0.8.0 → 0.8.1 (Generate complex HTML+JS pages with Python) + * cohere 5.13.12 → 5.15.0 () + * colorlog 6.8.2 → 6.9.0 (Add colours to the output of Python's logging module.) + * contourpy 1.3.1 → 1.3.2 (Python library for calculating contours of 2D quadrilateral grids) + * cython 3.0.12 → 3.1.1 (The Cython compiler for writing C extensions in the Python language.) + * dask 2025.3.0 → 2025.4.1 (Parallel PyData with Task Scheduling) + * debugpy 1.8.0 → 1.8.13 (An implementation of the Debug Adapter Protocol for Python) + * decorator 5.1.1 → 5.2.1 (Decorators for Humans) + * dill 0.3.9 → 0.4.0 (serialize all of Python) + * distributed 2025.3.0 → 2025.4.1 (Distributed scheduler for Dask) + * distro 1.8.0 → 1.9.0 (Distro - an OS platform information API) + * django 5.0.7 → 5.2 (A high-level Python web framework that encourages rapid development and clean, pragmatic design.) + * dnspython 2.6.1 → 2.7.0 (DNS toolkit) + * duckdb 1.2.2 → 1.3.0 (DuckDB in-process database) + * faker 36.1.1 → 37.1.0 (Faker is a Python package that generates fake data for you.) + * fastapi 0.115.8 → 0.115.12 (FastAPI framework, high performance, easy to learn, fast to code, ready for production) + * fastjsonschema 2.18.0 → 2.21.1 (Fastest Python implementation of JSON schema) + * filelock 3.17.0 → 3.18.0 (A platform independent file lock.) + * flit 3.10.1 → 3.12.0 (A simple packaging tool for simple packages.) + * fonttools 4.55.3 → 4.57.0 (Tools to manipulate font files) + * fsspec 2024.6.1 → 2025.3.2 (File-system specification) + * gitdb 4.0.10 → 4.0.12 (Git Object Database) + * gitpython 3.1.32 → 3.1.44 (GitPython is a Python library used to interact with Git repositories) + * graphene 3.3 → 3.4.3 (GraphQL Framework for Python) + * griffe 1.5.5 → 1.7.2 (Signatures for entire Python programs.) + * groq 0.13.1 → 0.25.0 (The official Python library for the groq API) + * guidata 3.7.1 → 3.9.0 (Automatic GUI generation for easy dataset editing and display) + * h2 4.1.0 → 4.2.0 (Pure-Python HTTP/2 protocol implementation) + * httpcore 1.0.5 → 1.0.7 (A minimal low-level HTTP client.) + * httpx 0.27.2 → 0.28.1 (The next generation HTTP client.) + * hupper 1.12 → 1.12.1 (Integrated process monitor for developing and reloading daemons.) + * iniconfig 2.0.0 → 2.1.0 (brain-dead simple config-ini parsing) + * intervaltree 3.0.2 → 3.1.0 (Editable interval tree data structure for Python 2 and 3) + * ipython 8.34.0 → 8.36.0 (IPython: Productive Interactive Computing) + * jinja2 3.1.2 → 3.1.6 (A very fast and expressive template engine.) + * jiter 0.8.2 → 0.9.0 (Fast iterable JSON parser.) + * json5 0.9.14 → 0.10.0 (A Python implementation of the JSON5 data format.) + * jsonpointer 2.4 → 3.0.0 (Identify specific nodes in a JSON document (RFC 6901)) + * jsonschema 4.19.2 → 4.23.0 (An implementation of JSON Schema validation for Python) + * jupyterlab 4.4.1 → 4.4.2 (JupyterLab computational environment) + * keras 3.9.2 → 3.10.0 (Multi-backend Keras) + * langchain 0.3.23 → 0.3.25 (Building applications with LLMs through composability) + * langsmith 0.3.24 → 0.3.42 (Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.) + * lmfit 1.3.1 → 1.3.3 (Least-Squares Minimization with Bounds and Constraints) + * mako 1.3.5 → 1.3.9 (A super-fast templating language that borrows the best ideas from the existing templating languages.) + * matplotlib 3.10.1 → 3.10.3 (Python plotting package) + * maturin 1.8.1 → 1.8.3 (Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages) + * missingno 0.5.1 → 0.5.2 (Missing data visualization module for Python.) + * mistralai 1.2.5 → 1.8.1 (Python Client SDK for the Mistral AI API.) + * mistune 2.0.5 → 3.1.3 (A sane and fast Markdown parser with useful plugins and renderers) + * mpld3 0.5.8 → 0.5.10 (D3 Viewer for Matplotlib) + * multidict 6.1.0 → 6.4.3 (multidict implementation) + * narwhals 1.30.0 → 1.36.0 (Extremely lightweight compatibility layer between dataframe libraries) + * nbclient 0.10.0 → 0.10.2 (A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor.) + * nbconvert 7.16.1 → 7.16.6 (Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script.) + * notebook 7.4.0 → 7.4.2 (Jupyter Notebook - A web-based notebook environment for interactive computing) + * numpy 2.2.4 → 2.2.6 (Fundamental package for array computing in Python) + * numpydoc 1.6.0 → 1.8.0 (Sphinx extension to support docstrings in Numpy format) + * openai 1.72.0 → 1.82.0 (The official Python library for the openai API) + * openpyxl 3.1.2 → 3.1.5 (A Python library to read/write Excel 2010 xlsx/xlsm files) + * optree 0.14.0 → 0.14.1 (Optimized PyTree Utilities.) + * optuna 3.6.1 → 4.2.1 (A hyperparameter optimization framework) + * orjson 3.10.12 → 3.10.16 (Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy) + * pandocfilters 1.5.0 → 1.5.1 (Utilities for writing pandoc filters in python) + * panel 1.6.2 → 1.6.3 (The powerful data exploration & web app framework for Python.) + * partd 1.4.0 → 1.4.2 (Appendable key-value storage) + * pathspec 0.11.0 → 0.12.1 (Utility library for gitignore style pattern matching of file paths.) + * patsy 0.5.6 → 1.0.1 (A Python package for describing statistical models and for building design matrices.) + * pexpect 4.8.0 → 4.9.0 (Pexpect allows easy control of interactive console applications.) + * pg8000 1.23.0 → 1.31.2 (PostgreSQL interface library) + * pip 25.0.1 → 25.1.1 (The PyPA recommended tool for installing Python packages.) + * platformdirs 4.3.6 → 4.3.7 (A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.) + * plotpy 2.7.2 → 2.7.4 (Curve and image plotting tools for Python/Qt applications) + * polars 1.27.1 → 1.31.0 (Blazingly fast DataFrame library) + * prettytable 3.3.0 → 3.16.0 (A simple Python library for easily displaying tabular data in a visually appealing ASCII table format) + * prince 0.15.0 → 0.16.0 (Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA) + * propcache 0.2.1 → 0.3.1 (Accelerated property cache) + * protobuf 5.27.3 → 6.30.2 () + * psutil 5.9.8 → 7.0.0 (Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7.) + * psygnal 0.11.1 → 0.12.0 (Fast python callback/event system modeled after Qt Signals) + * pyarrow 19.0.1 → 20.0.0 (Python library for Apache Arrow) + * pyerfa 2.0.1.4 → 2.0.1.5 (Python bindings for ERFA) + * pylint 3.1.0 → 3.3.6 (python code static checker) + * pynndescent 0.5.12 → 0.5.13 (Nearest Neighbor Descent) + * pyomo 6.9.1 → 6.9.2 (Pyomo: Python Optimization Modeling Objects) + * pyparsing 3.2.1 → 3.2.3 (pyparsing module - Classes and methods to define and execute parsing grammars) + * pypdf 5.1.0 → 5.4.0 (A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files) + * pyqt5 5.15.10 → 5.15.11 (Python bindings for the Qt cross platform application toolkit) + * pyqtwebengine 5.15.6 → 5.15.7 (Python bindings for the Qt WebEngine framework) + * pytest 8.3.4 → 8.3.5 (pytest: simple powerful testing with Python) + * pythonqwt 0.14.4 → 0.14.5 (Qt plotting widgets for Python) + * pytz 2024.2 → 2025.2 (World timezone definitions, modern and historical) + * pywin32 308 → 310 (Python for Window Extensions) + * pywinpty 2.0.14 → 2.0.15 (Pseudo terminal support for Windows from Python.) + * pyzmq 26.2.1 → 26.4.0 (Python bindings for 0MQ) + * qstylizer 0.2.2 → 0.2.4 (Stylesheet Generator for PyQt{4-5}/PySide{1-2}) + * qtpy 2.4.1 → 2.4.3 (Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6).) + * rapidfuzz 3.9.6 → 3.13.0 (rapid fuzzy string matching) + * redis 5.0.8 → 5.2.1 (Python client for Redis database and key-value store) + * referencing 0.35.1 → 0.36.2 (JSON Referencing + Python) + * reportlab 4.2.5 → 4.3.1 (The Reportlab Toolkit) + * rich 13.9.4 → 14.0.0 (Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal) + * rope 1.12.0 → 1.13.0 (a python refactoring library...) + * rtree 1.3.0 → 1.4.0 (R-Tree spatial index for Python GIS) + * scipy 1.15.2 → 1.15.3 (Fundamental algorithms for scientific computing in Python) + * setuptools 75.8.2 → 79.0.1 (Easily download, build, install, upgrade, and uninstall Python packages) + * shapely 2.0.6 → 2.1.0 (Manipulation and analysis of geometric objects) + * six 1.16.0 → 1.17.0 (Python 2 and 3 compatibility utilities) + * skrub 0.5.1 → 0.5.3 (Prepping tables for machine learning) + * smmap 5.0.0 → 5.0.2 (A pure Python implementation of a sliding window memory map manager) + * sniffio 1.3.0 → 1.3.1 (Sniff out which async library your code is running under) + * sphinx 7.3.7 → 8.1.3 (Python documentation generator) + * spyder 6.0.5 → 6.0.7 (The Scientific Python Development Environment) + * sqlalchemy 2.0.38 → 2.0.40 (Database Abstraction Library) + * starlette 0.45.3 → 0.46.2 (The little ASGI library that shines.) + * streamlit 1.44.0 → 1.46.0 (A faster way to build and share data apps) + * superqt 0.7.1 → 0.7.3 (Missing widgets and components for PyQt/PySide) + * sympy 1.13.3 → 1.14.0 (Computer algebra system (CAS) in Python) + * tblib 3.0.0 → 3.1.0 (Traceback serialization library.) + * tenacity 9.0.0 → 9.1.2 (Retry code until it succeeds) + * termcolor 2.5.0 → 3.1.0 (ANSI color formatting for output in terminal) + * threadpoolctl 3.5.0 → 3.6.0 (threadpoolctl) + * tifffile 2025.1.10 → 2025.3.30 (Read and write TIFF files) + * tiktoken 0.8.0 → 0.9.0 (tiktoken is a fast BPE tokeniser for use with OpenAI's models) + * tokenizers 0.21.0 → 0.21.1 () + * tornado 6.4.2 → 6.5.1 (Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.) + * tqdm 4.66.4 → 4.67.1 (Fast, Extensible Progress Meter) + * traitlets 5.14.1 → 5.14.3 (Traitlets Python configuration system) + * trio 0.29.0 → 0.30.0 (A friendly Python library for async concurrency and I/O) + * tzdata 2024.1 → 2025.2 (Provider of IANA time zone data) + * tzlocal 5.2 → 5.3.1 (tzinfo object for the local timezone) + * urllib3 2.2.3 → 2.4.0 (HTTP library with thread-safe connection pooling, file post, and more.) + * uvicorn 0.34.0 → 0.34.2 (The lightning-fast ASGI server.) + * winpython 15.3.20250425 → 16.6.20250620 (WinPython distribution tools, including WPPM) + * xarray 2025.3.0 → 2025.4.0 (N-D labeled arrays and datasets in Python) + * xlsxwriter 3.1.9 → 3.2.3 (A Python module for creating Excel XLSX files.) + +Removed packages: + * Python 3.13.3 (Python programming language with standard library) + * aniso8601 9.0.1 (A library for parsing ISO 8601 strings.) + * fast-histogram 0.14 (Fast simple 1D and 2D histograms) + * jsonpath-python 1.0.6 (A more powerful JSONPath implementation in modern python) + * mpl-scatter-density 0.7 (Matplotlib helpers to make density scatter plots) + * pydantic-ai 0.0.24 (Agent Framework / shim to use Pydantic with LLMs) + * typing-inspect 0.9.0 (Runtime inspection utilities for typing module.) + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythonslim-64bit-3.13.7.0.md b/changelogs/WinPythonslim-64bit-3.13.7.0.md new file mode 100644 index 00000000..96cb2f5d --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.13.7.0.md @@ -0,0 +1,535 @@ +## WinPython 3.13.7.0slim + +The following packages are included in WinPython-64bit v3.13.7.0slim . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.13.7 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.6.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.16.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.64.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.10.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.0 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.6.9.0.39.3 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.34.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.23.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.4 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.0 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.4.26 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.2.1 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.17.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[coloredlogs](https://pypi.org/project/coloredlogs) | 7.3.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 45.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxopt](https://pypi.org/project/cvxopt) | 1.3.2 | Convex optimization package +[cvxpy](https://pypi.org/project/cvxpy) | 1.7.1 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.4 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.7.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.18.2 | Data visualization toolchain based on aggregating into a grid +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.14 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.18 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.7.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.4 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.4.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.116.1 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.11.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.19.1 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.1 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.58.5 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.7.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.5.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.40.3 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.31.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.3 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.3 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.28.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.12.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[holoviews](https://pypi.org/project/holoviews) | 1.21.0 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.34.4 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.11.3 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.136.6 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.1 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.30.1 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.37.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.7 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.2.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.0 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.10.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.4.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.8.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.16.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.7 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.11.3 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.27 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.72 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.9 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.4.16 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.45.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 6.0.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[magika](https://pypi.org/project/magika) | 0.6.2 | A tool to determine the content type of a file with deep learning +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.8.2 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markdownify](https://pypi.org/project/markdownify) | 1.1.0 | Convert HTML to markdown. +[markitdown](https://pypi.org/project/markitdown) | 0.1.2 | Utility tool for converting various files to Markdown +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.6 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.9.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.11.0 | Model Context Protocol SDK +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.4.2 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.3 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.6.4 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.17.1 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.2.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.5.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.5 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.21 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.5 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.62.0 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[onnxruntime](https://pypi.org/project/onnxruntime) | 1.22.1 | ONNX Runtime is a runtime accelerator for Machine Learning models +[openai](https://pypi.org/project/openai) | 1.107.2 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.18 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.2 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.8.0 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.2.1 | Make your Python code clearer and more reliable by declaring Parameters. +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.3.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.3.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.5 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.33.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.31.1 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.14.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.31 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 21.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.0 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.11.7 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.33.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.12.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.4 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.0.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.8.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.7.34 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.4 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.26.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.7.2 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.2 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.8 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.1 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.1 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.6.1 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.7 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.8 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.41 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.47.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.5 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.49.1 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.4 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.31.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management +[wrapt](https://pypi.org/project/wrapt) | 1.17.2 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.9.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.5 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.24.0 | Zstandard bindings for Python + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonslim-64bit-3.14.2.0.md b/changelogs/WinPythonslim-64bit-3.14.2.0.md new file mode 100644 index 00000000..68dc6da5 --- /dev/null +++ b/changelogs/WinPythonslim-64bit-3.14.2.0.md @@ -0,0 +1,547 @@ +## WinPython 3.14.2.0slim + +The following packages are included in WinPython-64bit v3.14.2.0slim . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.14.0 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.9.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.13.1 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.4.0 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.17.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 6.0.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-doc](https://pypi.org/project/annotated-doc) | 0.0.3 | Document parameters, class attributes, return types, and variables inline, with Annotated. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.75.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.12.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.21 | custom jupyter widgets made easy +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.3 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.10.0 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 4.0.2 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.1 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.9.29.0.35.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.4.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.36.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.14.2 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.25.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 5.0.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.14.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.11.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.2.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 6.2.2 | Extensible memoizing collections and decorators +[cattrs](https://pypi.org/project/cattrs) | 1.2.0 | Composable complex class support for attrs. +[certifi](https://pypi.org/project/certifi) | 2025.11.12 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.3 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.11.1 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.3.0 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.2 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.20.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[coloredlogs](https://pypi.org/project/coloredlogs) | 15.0.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.3 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.3 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 46.0.3 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.2.3 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.1.0 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.11.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.2 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[datashader](https://pypi.org/project/datashader) | 0.18.2 | Data visualization toolchain based on aggregating into a grid +[debugpy](https://pypi.org/project/debugpy) | 1.8.17 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.3.1 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.11.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.8 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-parser](https://pypi.org/project/docstring-parser) | 0.17.0 | Parse Python docstrings in reST, Google and Numpydoc format +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.3.1 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 38.2.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.6.0 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.123.9 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.12.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.2 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.20.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.2 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.20.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.61.0 | Tools to manipulate font files +[foundry-local-sdk](https://pypi.org/project/foundry-local-sdk) | 0.5.1 | Foundry Local Manager Python SDK: Control-plane SDK for Foundry Local. +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.8.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.9.0 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[genai-prices](https://pypi.org/project/genai-prices) | 0.0.38 | Calculate prices for calling LLM inference APIs. +[geographiclib](https://pypi.org/project/geographiclib) | 2.1 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.45 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.43.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.55.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.4 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.14.0 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.37.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.13.4 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.15.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.28.0 | Modern, extensible Python build backend +[hf-xet](https://pypi.org/project/hf-xet) | 1.2.0 | Fast transfer of large files with the Hugging Face Hub. +[holoviews](https://pypi.org/project/holoviews) | 1.22.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 1.2.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.12.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.148.7 | The property-based testing library for Python +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.11 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[invoke](https://pypi.org/project/invoke) | 2.2.1 | Pythonic task execution +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.31.0 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.8 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 9.8.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-pygments-lexers](https://pypi.org/project/ipython-pygments-lexers) | 1.1.1 | Defines a variety of Pygments lexers for highlighting IPython code. +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.8 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.3.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.1 | +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.11.1 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.3 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.1 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.9.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.9.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.3.0 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.17.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.5.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.28.0 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.13.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 1.1.3 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 1.2.0 | Building applications with LLMs through composability +[langgraph](https://pypi.org/project/langgraph) | 1.0.5 | Building stateful, multi-actor applications with LLMs +[langgraph-checkpoint](https://pypi.org/project/langgraph-checkpoint) | 3.0.0 | Library with base interfaces for LangGraph checkpoint savers. +[langgraph-prebuilt](https://pypi.org/project/langgraph-prebuilt) | 1.0.5 | Library with high-level APIs for creating and executing LangGraph agents and tools. +[langgraph-sdk](https://pypi.org/project/langgraph-sdk) | 0.3.0 | SDK for interacting with LangGraph API +[langsmith](https://pypi.org/project/langsmith) | 0.4.59 | Client library to connect to the LangSmith Observability and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[librt](https://pypi.org/project/librt) | 0.6.2 | Mypyc runtime library +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[llvmlite](https://pypi.org/project/llvmlite) | 0.46.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 4.14.2 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lsprotocol](https://pypi.org/project/lsprotocol) | 2023.0.1 | Python implementation of the Language Server Protocol. +[lxml](https://pypi.org/project/lxml) | 6.0.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.9 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 4.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markdownify](https://pypi.org/project/markdownify) | 1.2.0 | Convert HTML to markdown. +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.3 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.8 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.2.1 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.10.2 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.21.0 | Model Context Protocol SDK +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.5.0 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.11 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.4 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.14.3 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.3 | ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning. +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.4 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.12 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.2 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.7.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.19.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.5.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.13.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.6.1 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.3.2 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.5.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.63.1 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.5 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 2.11.0 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.17.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.11.4 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ormsgpack](https://pypi.org/project/ormsgpack) | 1.12.0 | +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.8.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.3.1 | Declarative parameters for robust Python classes and a rich API for reactive programming +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.5 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 12.0.0 | Python Imaging Library (fork) +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pipdeptree](https://pypi.org/project/pipdeptree) | 2.30.0 | Command line utility to show dependency tree of packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.5.0 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.5.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.15.2 | A Grammar of Graphics for Python +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.36.1 | Blazingly fast DataFrame library +[polars-runtime-32](https://pypi.org/project/polars-runtime-32) | 1.36.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.3 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.4.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.33.1 | +[psutil](https://pypi.org/project/psutil) | 7.1.1 | Cross-platform lib for process and system monitoring. +[psycopg2](https://pypi.org/project/psycopg2) | 2.9.11 | psycopg2 - Python-PostgreSQL Database Adapter +[psygnal](https://pypi.org/project/psygnal) | 0.15.0 | Fast python callback/event system modeled after Qt Signals +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 22.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.23 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.12.5 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 1.12.0 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.41.5 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 1.12.0 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 1.12.0 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.11.0 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 4.0.4 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.15.3 | PyMongo - the Official MongoDB Python driver +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.6.1 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.3.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.12.1 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.5 | The Pyomo optimization modeling framework +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.5 | pyparsing - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyperclip](https://pypi.org/project/pyperclip) | 1.11.0 | A cross-platform clipboard module for Python. (Only handles plain text for now.) +[pyproj](https://pypi.org/project/pyproj) | 3.7.2 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.14.0 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.16.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-ruff](https://pypi.org/project/python-lsp-ruff) | 2.3.0 | Ruff linting plugin for pylsp +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.14.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.15.0 | Qt plotting widgets for Python +[pytokens](https://pypi.org/project/pytokens) | 0.3.0 | A Fast, spec compliant Python 3.14+ tokenizer that runs on older Pythons. +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.6 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.9.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 311 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 3.0.2 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.3 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.1.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.7.0 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.10.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.14.3 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.37.0 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.10.23 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.5 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.1.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.14.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.27.1 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[ruff](https://pypi.org/project/ruff) | 0.14.7 | An extremely fast Python linter and code formatter, written in Rust. +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.26.0 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.8.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.9 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.2 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.7.0 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.3 | Play and Record Sound with Python +[soundfile](https://pypi.org/project/soundfile) | 0.13.1 | An audio library based on libsndfile, CFFI and NumPy +[soupsieve](https://pypi.org/project/soupsieve) | 2.8 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.1.2 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.1.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.44 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.5.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.50.0 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.6 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.52.2 | A faster way to build and share data apps +[streamlit-bokeh](https://pypi.org/project/streamlit-bokeh) | 3.8.1 | Streamlit component that allows you to render Bokeh charts +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.12.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.22.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.32.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.9.11.17 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.20.1 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typer-slim](https://pypi.org/project/typer-slim) | 0.20.0 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20250822 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.15.0 | Backported and Experimental Type Hints for Python 3.9+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.2 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.11.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.9.post2 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.3 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.5.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uuid-utils](https://pypi.org/project/uuid-utils) | 0.12.0 | Drop-in replacement for Python UUID with bindings in Rust +[uvicorn](https://pypi.org/project/uvicorn) | 0.38.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.2 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.9.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.15 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.5 | A little word cloud generator +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management +[wrapt](https://pypi.org/project/wrapt) | 2.0.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.9 | A Python module for creating Excel XLSX files. +[xxhash](https://pypi.org/project/xxhash) | 3.6.0 | Python binding for xxHash +[xyzservices](https://pypi.org/project/xyzservices) | 2025.4.0 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.43.0 | A formatter for Python code +[yarl](https://pypi.org/project/yarl) | 1.22.0 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.9.26 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.23.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.25.0 | Zstandard bindings for Python + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + diff --git a/changelogs/WinPythonslimf-64bit-3.14.2.0.md b/changelogs/WinPythonslimf-64bit-3.14.2.0.md new file mode 100644 index 00000000..7c13dbd7 --- /dev/null +++ b/changelogs/WinPythonslimf-64bit-3.14.2.0.md @@ -0,0 +1,481 @@ +## WinPython 3.14.2.0slimf + +The following packages are included in WinPython-64bit v3.14.2.0slimf . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Pandoc](https://pandoc.org) | 3.1.9 | an universal document converter +[Python](http://www.python.org/) | 3.14.2 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.13.1 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.4.0 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[altair](https://pypi.org/project/altair) | 6.0.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-doc](https://pypi.org/project/annotated-doc) | 0.0.3 | Document parameters, class attributes, return types, and variables inline, with Annotated. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.75.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.12.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.21 | custom jupyter widgets made easy +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.3 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.10.0 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 4.0.2 | An abstract syntax tree for Python with inference support. +[asttokens](https://pypi.org/project/asttokens) | 3.0.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.4.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.36.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.14.2 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.25.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 5.0.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.14.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.11.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 6.2.2 | Extensible memoizing collections and decorators +[cattrs](https://pypi.org/project/cattrs) | 1.2.0 | Composable complex class support for attrs. +[certifi](https://pypi.org/project/certifi) | 2025.11.12 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.3 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[click](https://pypi.org/project/click) | 8.3.0 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.2 | Pickler class to extend the standard pickle.Pickler functionality +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorcet](https://pypi.org/project/colorcet) | 3.1.0 | Collection of perceptually uniform colormaps +[coloredlogs](https://pypi.org/project/coloredlogs) | 15.0.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.3 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.3 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 46.0.3 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.2.3 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.1.0 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.11.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.2 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[debugpy](https://pypi.org/project/debugpy) | 1.8.17 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.3.1 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.11.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.8 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-parser](https://pypi.org/project/docstring-parser) | 0.17.0 | Parse Python docstrings in reST, Google and Numpydoc format +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.3.1 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 38.2.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.6.0 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.123.9 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.2 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.20.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.2 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.20.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.61.0 | Tools to manipulate font files +[foundry-local-sdk](https://pypi.org/project/foundry-local-sdk) | 0.5.1 | Foundry Local Manager Python SDK: Control-plane SDK for Foundry Local. +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.8.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.9.0 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[genai-prices](https://pypi.org/project/genai-prices) | 0.0.38 | Calculate prices for calling LLM inference APIs. +[geographiclib](https://pypi.org/project/geographiclib) | 2.1 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.45 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.43.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.55.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[griffe](https://pypi.org/project/griffe) | 1.14.0 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.37.1 | The official Python library for the groq API +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[hatchling](https://pypi.org/project/hatchling) | 1.28.0 | Modern, extensible Python build backend +[hf-xet](https://pypi.org/project/hf-xet) | 1.2.0 | Fast transfer of large files with the Hugging Face Hub. +[holoviews](https://pypi.org/project/holoviews) | 1.22.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.1 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 1.2.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hvplot](https://pypi.org/project/hvplot) | 0.12.1 | A high-level plotting API for the PyData ecosystem built on HoloViews. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.148.7 | The property-based testing library for Python +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.11 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[invoke](https://pypi.org/project/invoke) | 2.2.1 | Pythonic task execution +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.31.0 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.8 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 9.8.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-pygments-lexers](https://pypi.org/project/ipython-pygments-lexers) | 1.1.1 | Defines a variety of Pygments lexers for highlighting IPython code. +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.8 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.3.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.11.1 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.3 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.1 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.9.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.9.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.3.0 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.17.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.5.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.28.0 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[librt](https://pypi.org/project/librt) | 0.6.2 | Mypyc runtime library +[linkify-it-py](https://pypi.org/project/linkify-it-py) | 2.0.3 | Links recognition library with FULL unicode support. +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 4.14.2 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lsprotocol](https://pypi.org/project/lsprotocol) | 2023.0.1 | Python implementation of the Language Server Protocol. +[lxml](https://pypi.org/project/lxml) | 6.0.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.9 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 4.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markdownify](https://pypi.org/project/markdownify) | 1.2.0 | Convert HTML to markdown. +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.3 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.8 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.2.1 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.10.2 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mdit-py-plugins](https://pypi.org/project/mdit-py-plugins) | 0.5.0 | Collection of plugins for markdown-it-py +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.11 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.4 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.14.3 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.4 | ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning. +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.4 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.12 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.2 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.7.0 | multidict implementation +[multipledispatch](https://pypi.org/project/multipledispatch) | 1.0.0 | Multiple dispatch +[mypy](https://pypi.org/project/mypy) | 1.19.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[mysql-connector-python](https://pypi.org/project/mysql-connector-python) | 9.5.0 | A self-contained Python driver for communicating with MySQL servers, using an API that is compliant with the Python Database API Specification v +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.13.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.6.1 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.3.2 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.5.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numpy](https://pypi.org/project/numpy) | 2.4.0rc1 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 2.11.0 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 3.0.0rc1 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[panel](https://pypi.org/project/panel) | 1.8.4 | The powerful data exploration & web app framework for Python. +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[param](https://pypi.org/project/param) | 2.3.1 | Declarative parameters for robust Python classes and a rich API for reactive programming +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.5 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 12.0.0 | Python Imaging Library (fork) +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pipdeptree](https://pypi.org/project/pipdeptree) | 2.30.0 | Command line utility to show dependency tree of packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.5.0 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.5.0 | An open-source interactive data visualization library for Python +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.3 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.4.1 | Accelerated property cache +[psutil](https://pypi.org/project/psutil) | 7.1.1 | Cross-platform lib for process and system monitoring. +[psygnal](https://pypi.org/project/psygnal) | 0.15.0 | Fast python callback/event system modeled after Qt Signals +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 22.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.23 | C parser in Python +[pyct](https://pypi.org/project/pyct) | 0.5.0 | Python package common tasks for users (e.g. copy examples, fetch data, ...) +[pydantic](https://pypi.org/project/pydantic) | 2.12.5 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 1.12.0 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.41.5 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 1.12.0 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 1.12.0 | Graph and state machine library +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 4.0.4 | python code static checker +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.15.3 | PyMongo - the Official MongoDB Python driver +[pynacl](https://pypi.org/project/pynacl) | 1.6.1 | Python binding to the Networking and Cryptography (NaCl) library +[pyodbc](https://pypi.org/project/pyodbc) | 5.3.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.12.1 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.5 | The Pyomo optimization modeling framework +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.5 | pyparsing - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyperclip](https://pypi.org/project/pyperclip) | 1.11.0 | A cross-platform clipboard module for Python. (Only handles plain text for now.) +[pyproj](https://pypi.org/project/pyproj) | 3.7.2 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.16.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-ruff](https://pypi.org/project/python-lsp-ruff) | 2.3.0 | Ruff linting plugin for pylsp +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.14.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pytokens](https://pypi.org/project/pytokens) | 0.3.0 | A Fast, spec compliant Python 3.14+ tokenizer that runs on older Pythons. +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pyviz-comms](https://pypi.org/project/pyviz-comms) | 3.0.6 | A JupyterLab extension for rendering HoloViz content. +[pywavelets](https://pypi.org/project/pywavelets) | 1.9.0 | PyWavelets, wavelet transform module +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 3.0.2 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.3 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.1.0 | Python bindings for 0MQ +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.14.3 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.37.0 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.10.23 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.5 | Python HTTP for Humans. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.1.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.14.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.27.1 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[ruff](https://pypi.org/project/ruff) | 0.14.7 | An extremely fast Python linter and code formatter, written in Rust. +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.26.0 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.8.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.9 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.2 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.7.0 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.3 | Play and Record Sound with Python +[soundfile](https://pypi.org/project/soundfile) | 0.13.1 | An audio library based on libsndfile, CFFI and NumPy +[soupsieve](https://pypi.org/project/soupsieve) | 2.8 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.1.2 | Jupyter kernels for Spyder's console +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sspilib](https://pypi.org/project/sspilib) | 0.5.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.50.0 | The little ASGI library that shines. +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.12.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.32.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.9.11.17 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.20.1 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typer-slim](https://pypi.org/project/typer-slim) | 0.20.0 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20250822 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.15.0 | Backported and Experimental Type Hints for Python 3.9+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.2 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[uc-micro-py](https://pypi.org/project/uc-micro-py) | 1.0.3 | Micro subset of unicode data files for linkify-it-py projects. +[ujson](https://pypi.org/project/ujson) | 5.11.0 | Ultra fast JSON encoder and decoder for Python +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.3 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.5.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.38.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.2 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.9.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.15 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.5 | A little word cloud generator +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management +[wrapt](https://pypi.org/project/wrapt) | 2.0.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.9 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2025.4.0 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.43.0 | A formatter for Python code +[yarl](https://pypi.org/project/yarl) | 1.22.0 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.9.26 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.23.0 | Backport of pathlib-compatible object wrapper for zip files + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ + + + diff --git a/changelogs/WinPythonwhl-64bit-3.12.10.1.md b/changelogs/WinPythonwhl-64bit-3.12.10.1.md new file mode 100644 index 00000000..2872b31f --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.12.10.1.md @@ -0,0 +1,522 @@ +## WinPython 3.12.10.1whl + +The following packages are included in WinPython-64bit v3.12.10.1whl 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.12.10 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.2.2 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.51.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.9.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.3 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.15.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.1 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.4.1 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.13 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.4.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.3.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.1.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.115.12 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.18.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.57.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.3.2 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.38.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.16.1 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.2 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.25.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.9.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.7 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.33.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.36.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.9.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.10.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.23.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2024.10.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.15.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.2 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.10.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.25 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.59 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.42 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.9 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.3 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.9.3 | Model Context Protocol SDK +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.8.1 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.6.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.4.3 | multidict implementation +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.36.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.2 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.6 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.82.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.32.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.16 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.4 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.31.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.51 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.30.2 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.12.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 20.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.4.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.5 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.4.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.3.1 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.24.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.0 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.3 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.1.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.7 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.40 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 2.2.1 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.46.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.46.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.3 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.30.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.4.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.3 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + + +
diff --git a/changelogs/WinPythonwhl-64bit-3.12.10.1_History.md b/changelogs/WinPythonwhl-64bit-3.12.10.1_History.md new file mode 100644 index 00000000..49f45d21 --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.12.10.1_History.md @@ -0,0 +1,26 @@ +## History of changes for WinPython-64bit 3.12.10.1whl + +The following changes were made to WinPython-64bit distribution since version 3.12.10.1whl. + + +
+ +### Tools + + +No differences found. + +### Python packages + + +No differences found. + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythonwhl-64bit-3.13.11.0.md b/changelogs/WinPythonwhl-64bit-3.13.11.0.md new file mode 100644 index 00000000..5707645e --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.13.11.0.md @@ -0,0 +1,547 @@ +## WinPython 3.13.11.0whl + +The following packages are included in WinPython-64bit v3.13.11.0whl . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.11 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.9.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.13.1 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.4.0 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.17.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 6.0.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-doc](https://pypi.org/project/annotated-doc) | 0.0.3 | Document parameters, class attributes, return types, and variables inline, with Annotated. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.75.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.12.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.21 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.3 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.10.0 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 4.0.2 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.1 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.9.29.0.35.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.4.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.36.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.14.2 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.25.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 5.0.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.14.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.11.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.2.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 6.2.2 | Extensible memoizing collections and decorators +[cattrs](https://pypi.org/project/cattrs) | 1.2.0 | Composable complex class support for attrs. +[certifi](https://pypi.org/project/certifi) | 2025.11.12 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.3 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.11.1 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.3.0 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.2 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.20.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[coloredlogs](https://pypi.org/project/coloredlogs) | 15.0.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.3 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.3 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 46.0.3 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxpy](https://pypi.org/project/cvxpy) | 1.7.1 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.2.3 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.1.0 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.11.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.2 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.17 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.3.1 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.11.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-parser](https://pypi.org/project/docstring-parser) | 0.17.0 | Parse Python docstrings in reST, Google and Numpydoc format +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.3.1 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 38.2.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.6.0 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.123.9 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.12.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.2 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.20.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.2 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.20.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.61.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.8.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.9.0 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[genai-prices](https://pypi.org/project/genai-prices) | 0.0.38 | Calculate prices for calling LLM inference APIs. +[geographiclib](https://pypi.org/project/geographiclib) | 2.1 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.45 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.43.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.55.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.4 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.14.0 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.37.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.13.4 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.15.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.28.0 | Modern, extensible Python build backend +[hf-xet](https://pypi.org/project/hf-xet) | 1.2.0 | Fast transfer of large files with the Hugging Face Hub. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 1.2.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.148.7 | The property-based testing library for Python +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.11 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[invoke](https://pypi.org/project/invoke) | 2.2.1 | Pythonic task execution +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.31.0 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.8 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 9.8.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-pygments-lexers](https://pypi.org/project/ipython-pygments-lexers) | 1.1.1 | Defines a variety of Pygments lexers for highlighting IPython code. +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.8 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.3.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.1 | +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.11.1 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.3 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.1 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.9.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.9.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.3.0 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.17.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.5.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.28.0 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.13.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 1.1.3 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 1.2.0 | Building applications with LLMs through composability +[langgraph](https://pypi.org/project/langgraph) | 1.0.5 | Building stateful, multi-actor applications with LLMs +[langgraph-checkpoint](https://pypi.org/project/langgraph-checkpoint) | 3.0.0 | Library with base interfaces for LangGraph checkpoint savers. +[langgraph-prebuilt](https://pypi.org/project/langgraph-prebuilt) | 1.0.5 | Library with high-level APIs for creating and executing LangGraph agents and tools. +[langgraph-sdk](https://pypi.org/project/langgraph-sdk) | 0.3.0 | SDK for interacting with LangGraph API +[langsmith](https://pypi.org/project/langsmith) | 0.4.59 | Client library to connect to the LangSmith Observability and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[librt](https://pypi.org/project/librt) | 0.6.2 | Mypyc runtime library +[llvmlite](https://pypi.org/project/llvmlite) | 0.46.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 4.14.2 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lsprotocol](https://pypi.org/project/lsprotocol) | 2023.0.1 | Python implementation of the Language Server Protocol. +[lxml](https://pypi.org/project/lxml) | 6.0.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.9 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 4.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.3 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.8 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.2.1 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.10.2 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.21.0 | Model Context Protocol SDK +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.11 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.4 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.14.3 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.3 | ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning. +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.4 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.12 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.2 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.7.0 | multidict implementation +[mypy](https://pypi.org/project/mypy) | 1.19.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.13.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.6.1 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.3.2 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.5.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.63.1 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.5 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[onnxruntime](https://pypi.org/project/onnxruntime) | 1.23.2 | ONNX Runtime is a runtime accelerator for Machine Learning models +[openai](https://pypi.org/project/openai) | 2.11.0 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.17.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.11.4 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ormsgpack](https://pypi.org/project/ormsgpack) | 1.12.0 | +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.5 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 12.0.0 | Python Imaging Library (fork) +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pipdeptree](https://pypi.org/project/pipdeptree) | 2.30.0 | Command line utility to show dependency tree of packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.5.0 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.5.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.15.2 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.8.2 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.36.1 | Blazingly fast DataFrame library +[polars-runtime-32](https://pypi.org/project/polars-runtime-32) | 1.36.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.3 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.4.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.33.1 | +[psutil](https://pypi.org/project/psutil) | 7.1.1 | Cross-platform lib for process and system monitoring. +[psycopg2](https://pypi.org/project/psycopg2) | 2.9.11 | psycopg2 - Python-PostgreSQL Database Adapter +[psygnal](https://pypi.org/project/psygnal) | 0.15.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.31 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 22.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.23 | C parser in Python +[pydantic](https://pypi.org/project/pydantic) | 2.12.5 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 1.12.0 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.41.5 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 1.12.0 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 1.12.0 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.11.0 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 4.0.4 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.15.3 | PyMongo - the Official MongoDB Python driver +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.6.1 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.3.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.12.1 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.5 | The Pyomo optimization modeling framework +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.5 | pyparsing - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyperclip](https://pypi.org/project/pyperclip) | 1.11.0 | A cross-platform clipboard module for Python. (Only handles plain text for now.) +[pyproj](https://pypi.org/project/pyproj) | 3.7.2 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.14.0 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.16.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-ruff](https://pypi.org/project/python-lsp-ruff) | 2.3.0 | Ruff linting plugin for pylsp +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.14.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.15.0 | Qt plotting widgets for Python +[pytokens](https://pypi.org/project/pytokens) | 0.3.0 | A Fast, spec compliant Python 3.14+ tokenizer that runs on older Pythons. +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pywavelets](https://pypi.org/project/pywavelets) | 1.9.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 311 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 3.0.2 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.3 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.1.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.7.0 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.10.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.14.3 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.37.0 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.10.23 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.5 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.1.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.14.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.27.1 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[ruff](https://pypi.org/project/ruff) | 0.14.7 | An extremely fast Python linter and code formatter, written in Rust. +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.26.0 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.8.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.9 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.2 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.7.0 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.3 | Play and Record Sound with Python +[soundfile](https://pypi.org/project/soundfile) | 0.13.1 | An audio library based on libsndfile, CFFI and NumPy +[soupsieve](https://pypi.org/project/soupsieve) | 2.8 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.1.2 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.1.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.44 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.5.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.50.0 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.6 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.52.2 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.12.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.22.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.32.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.9.11.17 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.20.1 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typer-slim](https://pypi.org/project/typer-slim) | 0.20.0 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20250822 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.15.0 | Backported and Experimental Type Hints for Python 3.9+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.2 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[ujson](https://pypi.org/project/ujson) | 5.11.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.9.post2 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.3 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.5.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uuid-utils](https://pypi.org/project/uuid-utils) | 0.12.0 | Drop-in replacement for Python UUID with bindings in Rust +[uvicorn](https://pypi.org/project/uvicorn) | 0.38.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.2 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.9.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.15 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 2.0.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.9 | A Python module for creating Excel XLSX files. +[xxhash](https://pypi.org/project/xxhash) | 3.6.0 | Python binding for xxHash +[xyzservices](https://pypi.org/project/xyzservices) | 2025.4.0 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.43.0 | A formatter for Python code +[yarl](https://pypi.org/project/yarl) | 1.22.0 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.9.26 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.23.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.25.0 | Zstandard bindings for Python + + + diff --git a/changelogs/WinPythonwhl-64bit-3.13.5.0.md b/changelogs/WinPythonwhl-64bit-3.13.5.0.md new file mode 100644 index 00000000..c50ede47 --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.13.5.0.md @@ -0,0 +1,522 @@ +## WinPython 3.13.5.0whl + +The following packages are included in WinPython-64bit v3.13.5.0whl 3.10.11.1dot. + +
+ +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.5 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[winpython](https://pypi.org/project/winpython) | 16.6.20250620 | WinPython distribution tools, including WPPM + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.2.2 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.3.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 23.2.1 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.20.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 0.7.16 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.15.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.51.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.9.0 | High level compatibility layer for multiple asynchronous event loop implementations +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 23.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 21.2.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 6.1.6 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2024.12.23.0.33.24 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.20.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.32.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.21.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.3 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.7.3 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.1.31 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 1.17.1 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.1.8 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.15.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 44.0.0 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxpy](https://pypi.org/project/cvxpy) | 1.6.4 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.1 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.4.1 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.13 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.14 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.4.1 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.3.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 1.1.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.1.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.115.12 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.10.0 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.18.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.0 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.57.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.5.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.3.2 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.0.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.38.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.16.1 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.1.1 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.2 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.25.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.9.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.14.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.7 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.33.0 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.130.4 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.13.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.6.1 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.13.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.29.5 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.19.2 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.36.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.6 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 5.13.2 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.1.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.1.3 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.9.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.4.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.10.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.23.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2024.10.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.7.2 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.19.2 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.15.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.2 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.14 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.10.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.8 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.25 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.59 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.8 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.3.42 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[llvmlite](https://pypi.org/project/llvmlite) | 0.44.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 5.3.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.9 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.7 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.3 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.8.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.9.3 | Model Context Protocol SDK +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.8.1 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.6.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.30.0 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.2.0 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.4.3 | multidict implementation +[mypy](https://pypi.org/project/mypy) | 1.15.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.0.0 | Type system extensions for programs checked with the mypy type checker. +[namex](https://pypi.org/project/namex) | 0.0.8 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 1.36.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.4.2 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.18 | Python bindings to the ammonia HTML sanitization library. +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.2 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.61.2 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.2.6 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 1.82.0 | The official Python library for the openai API +[opencv-python](https://pypi.org/project/opencv-python) | 4.11.0.86 | Wrapper package for OpenCV python bindings. +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.32.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.16 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 24.2 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.2.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[parso](https://pypi.org/project/parso) | 0.8.4 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.1.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.1.1 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.0.1 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.4 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.31.0 | Blazingly fast DataFrame library +[portalocker](https://pypi.org/project/portalocker) | 2.7.0 | Wraps the portalocker recipe for easy usage +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.51 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.30.2 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.12.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.29 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 20.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 2.13.6 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pydantic](https://pypi.org/project/pydantic) | 2.10.6 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.27.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.10.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.4.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.3.5 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 26.4.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.0 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.7.2 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2024.11.6 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.3.1 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.3 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.24.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.7.2 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.6.1 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.15.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.7.post2 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 79.0.1 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.0 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.19.3 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[sklearn-compat](https://pypi.org/project/sklearn-compat) | 0.1.3 | Ease support for compatible scikit-learn estimators across versions +[skrub](https://pypi.org/project/skrub) | 0.5.3 | Prepping tables for machine learning +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 2.2.0 | This package provides 29 stemmers for 28 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.6 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.1.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.7 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.40 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 2.2.1 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.46.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.4 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.46.0 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.3 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.1 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.1 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.30.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 14.2 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.16.0 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.4.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.3 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.23.0 | Zstandard bindings for Python + + +
diff --git a/changelogs/WinPythonwhl-64bit-3.13.5.0_History.md b/changelogs/WinPythonwhl-64bit-3.13.5.0_History.md new file mode 100644 index 00000000..6c4b0699 --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.13.5.0_History.md @@ -0,0 +1,26 @@ +## History of changes for WinPython-64bit 3.13.5.0whl + +The following changes were made to WinPython-64bit distribution since version 3.13.5.0whl. + + +
+ +### Tools + + +No differences found. + +### Python packages + + +No differences found. + +### WheelHouse packages + + +No differences found. + + +
+ +* * * diff --git a/changelogs/WinPythonwhl-64bit-3.13.7.0.md b/changelogs/WinPythonwhl-64bit-3.13.7.0.md new file mode 100644 index 00000000..cba2d066 --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.13.7.0.md @@ -0,0 +1,526 @@ +## WinPython 3.13.7.0whl + +The following packages are included in WinPython-64bit v3.13.7.0whl . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.13.7 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.6.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.11.18 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.3.2 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.16.1 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 5.5.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.64.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.10.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.18 | custom jupyter widgets made easy +[appdirs](https://pypi.org/project/appdirs) | 1.4.4 | A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.2 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.8.1 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 3.3.9 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.0 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.6.9.0.39.3 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.0 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.3.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.34.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.9.0 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.23.0 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 4.3.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.13.4 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.1.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.0 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.1.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.2.2.post1 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 5.5.2 | Extensible memoizing collections and decorators +[certifi](https://pypi.org/project/certifi) | 2025.4.26 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.2 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.10.0 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.2.1 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.1 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.17.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[coloredlogs](https://pypi.org/project/coloredlogs) | 7.3.1 | Colored terminal output for Python's logging module +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.2 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.2 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 45.0.5 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cvxpy](https://pypi.org/project/cvxpy) | 1.7.1 | A domain-specific language for modeling convex optimization problems in Python. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.1.4 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.0.1 | Cython implementation of Toolz: High performance functional utilities +[dask](https://pypi.org/project/dask) | 2025.7.0 | Parallel PyData with Task Scheduling +[datasette](https://pypi.org/project/datasette) | 0.65.1 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[deap](https://pypi.org/project/deap) | 1.4.2 | Distributed Evolutionary Algorithms in Python +[debugpy](https://pypi.org/project/debugpy) | 1.8.14 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.2.18 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distributed](https://pypi.org/project/distributed) | 2025.7.0 | Distributed scheduler for Dask +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.4 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.0 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.2.2 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.0 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 37.4.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.2.9 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.116.1 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.11.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.1 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.19.1 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.1 | A simple framework for building complex web applications. +[flatbuffers](https://pypi.org/project/flatbuffers) | 25.2.10 | The FlatBuffers serialization format for Python +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.19.5 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.58.5 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.7.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.5.1 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[geographiclib](https://pypi.org/project/geographiclib) | 2.0 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[gitdb](https://pypi.org/project/gitdb) | 4.0.12 | Git Object Database +[gitpython](https://pypi.org/project/gitpython) | 3.1.44 | GitPython is a Python library used to interact with Git repositories +[google-auth](https://pypi.org/project/google-auth) | 2.40.3 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.31.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.3 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.7.3 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.28.0 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.12.0 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.12.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.27.0 | Modern, extensible Python build backend +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 0.34.4 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[humanfriendly](https://pypi.org/project/humanfriendly) | 10.0 | Human friendly output for text interfaces using Python +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.136.6 | A library for property-based testing +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.10 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.1 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.30.1 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.7 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 8.37.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.7 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.2.1 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.0 | Approximate and phonetic matching of strings. +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.10.0 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.2 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.0 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.4.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.8.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.2.5 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.16.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.4.7 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.27.3 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.11.3 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 0.3.27 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 0.3.72 | Building applications with LLMs through composability +[langchain-text-splitters](https://pypi.org/project/langchain-text-splitters) | 0.3.9 | LangChain text splitting utilities +[langsmith](https://pypi.org/project/langsmith) | 0.4.16 | Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. +[lazy-loader](https://pypi.org/project/lazy-loader) | 0.4 | Makes it easy to load subpackages and functions on demand. +[llvmlite](https://pypi.org/project/llvmlite) | 0.45.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 3.12.0 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lxml](https://pypi.org/project/lxml) | 6.0.0 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.8.2 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 3.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.2 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.6 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.1.7 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.9.3 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.11.0 | Model Context Protocol SDK +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.3 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.3 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.11.4 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.1 | +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.3 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.10 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[msgpack](https://pypi.org/project/msgpack) | 1.1.0 | MessagePack serializer +[multidict](https://pypi.org/project/multidict) | 6.6.4 | multidict implementation +[mypy](https://pypi.org/project/mypy) | 1.17.1 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.5.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.5 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.2.21 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.4.5 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.62.0 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.3 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[onnxruntime](https://pypi.org/project/onnxruntime) | 1.22.1 | ONNX Runtime is a runtime accelerator for Machine Learning models +[openai](https://pypi.org/project/openai) | 1.107.2 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.14.1 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.10.18 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[osqp](https://pypi.org/project/osqp) | 0.6.7.post3 | OSQP: The Operator Splitting QP Solver +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[overrides](https://pypi.org/project/overrides) | 7.7.0 | A decorator to automatically detect mismatch when overriding a method. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.2 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.2 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 11.3.0 | Python Imaging Library (Fork) +[pip](https://pypi.org/project/pip) | 25.2 | The PyPA recommended tool for installing Python packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.3.7 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.3.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.13.6 | A Grammar of Graphics for Python +[plotpy](https://pypi.org/project/plotpy) | 2.7.5 | Curve and image plotting tools for Python/Qt applications +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.33.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.0 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.3.1 | Accelerated property cache +[protobuf](https://pypi.org/project/protobuf) | 6.31.1 | +[psutil](https://pypi.org/project/psutil) | 7.0.0 | Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7. +[psygnal](https://pypi.org/project/psygnal) | 0.14.0 | Fast python callback/event system modeled after Qt Signals +[ptpython](https://pypi.org/project/ptpython) | 3.0.31 | Python REPL build on top of prompt_toolkit +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyarrow](https://pypi.org/project/pyarrow) | 21.0.0 | Python library for Apache Arrow +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.0 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.22 | C parser in Python +[pydantic](https://pypi.org/project/pydantic) | 2.11.7 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 0.2.9 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.33.2 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 0.2.9 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 0.2.9 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.8.1 | Settings management using Pydantic +[pydeck](https://pypi.org/project/pydeck) | 0.9.1 | Widget for deck.gl maps +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 3.3.6 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.12.1 | Python driver for MongoDB +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.5.0 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.2.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.10.0 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.2 | Pyomo: Python Optimization Modeling Objects +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.3 | pyparsing module - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyproj](https://pypi.org/project/pyproj) | 3.7.0 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.0 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.13.7 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyreadline3](https://pypi.org/project/pyreadline3) | 3.5.4 | A python implementation of GNU readline. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.15.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.12.2 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.14.5 | Qt plotting widgets for Python +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pywavelets](https://pypi.org/project/pywavelets) | 1.8.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 310 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 2.0.15 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.2 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.0.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qdldl](https://pypi.org/project/qdldl) | 0.1.7.post5 | QDLDL, a free LDL factorization routine. +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.6.1 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.8.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.13.0 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.36.2 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.7.34 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.4 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.0.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.13.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.26.0 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-image](https://pypi.org/project/scikit-image) | 0.25.2 | Image processing in Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.7.2 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.2 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.8 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.1 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.1 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.6.1 | Machine learning with dataframes +[smmap](https://pypi.org/project/smmap) | 5.0.2 | A pure Python implementation of a sliding window memory map manager +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.1 | Play and Record Sound with Python +[soupsieve](https://pypi.org/project/soupsieve) | 2.7 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.0.8 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.0.5 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.41 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.2.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.47.2 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.5 | Statistical computations and models for Python +[streamlit](https://pypi.org/project/streamlit) | 1.49.1 | A faster way to build and share data apps +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tblib](https://pypi.org/project/tblib) | 3.1.0 | Traceback serialization library. +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tifffile](https://pypi.org/project/tifffile) | 2025.3.30 | Read and write TIFF files +[tiktoken](https://pypi.org/project/tiktoken) | 0.9.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.21.4 | +[toml](https://pypi.org/project/toml) | 0.10.2 | Python Library for Tom's Obvious, Minimal Language +[tomli](https://pypi.org/project/tomli) | 2.2.1 | A lil' TOML parser +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.2 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.31.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.5.9.12 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.15.2 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20240316 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.13.2 | Backported and Experimental Type Hints for Python 3.8+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.0 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[ujson](https://pypi.org/project/ujson) | 5.10.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.7 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.2 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.4.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uvicorn](https://pypi.org/project/uvicorn) | 0.34.2 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.0 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.8.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.14 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.4 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 1.17.2 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.9.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.5 | A Python module for creating Excel XLSX files. +[xyzservices](https://pypi.org/project/xyzservices) | 2023.10.1 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.40.1 | A formatter for Python code. +[yarl](https://pypi.org/project/yarl) | 1.18.3 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.2.19 | A feature-rich command-line audio/video downloader +[zict](https://pypi.org/project/zict) | 3.0.0 | Mutable mapping tools +[zipp](https://pypi.org/project/zipp) | 3.21.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.24.0 | Zstandard bindings for Python + + + diff --git a/changelogs/WinPythonwhl-64bit-3.14.2.0.md b/changelogs/WinPythonwhl-64bit-3.14.2.0.md new file mode 100644 index 00000000..06f342f8 --- /dev/null +++ b/changelogs/WinPythonwhl-64bit-3.14.2.0.md @@ -0,0 +1,520 @@ +## WinPython 3.14.2.0whl + +The following packages are included in WinPython-64bit v3.14.2.0whl . + + +### Tools + +Name | Version | Description +-----|---------|------------ +[Python](http://www.python.org/) | 3.14.2 | Python programming language with standard library + + +### Python packages + +Name | Version | Description +-----|---------|------------ +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[wppm](https://pypi.org/project/wppm) | 17.2.20250823 | WinPython Package Management + + +### WheelHouse packages + +Name | Version | Description +-----|---------|------------ +[absl-py](https://pypi.org/project/absl-py) | 2.3.0 | Abseil Python Common Libraries, see https://github.com/abseil/abseil-py. +[adbc-driver-manager](https://pypi.org/project/adbc-driver-manager) | 1.9.0 | A generic entrypoint for ADBC drivers. +[aiofiles](https://pypi.org/project/aiofiles) | 24.1.0 | File support for asyncio. +[aiohappyeyeballs](https://pypi.org/project/aiohappyeyeballs) | 2.6.1 | Happy Eyeballs for asyncio +[aiohttp](https://pypi.org/project/aiohttp) | 3.13.1 | Async http client/server framework (asyncio) +[aiosignal](https://pypi.org/project/aiosignal) | 1.4.0 | aiosignal: a list of registered asynchronous callbacks +[aiosqlite](https://pypi.org/project/aiosqlite) | 0.21.0 | asyncio bridge to the standard sqlite3 module +[alabaster](https://pypi.org/project/alabaster) | 1.0.0 | A light, configurable Sphinx theme +[alembic](https://pypi.org/project/alembic) | 1.17.2 | A database migration tool for SQLAlchemy. +[altair](https://pypi.org/project/altair) | 6.0.0 | Vega-Altair: A declarative statistical visualization library for Python. +[annotated-doc](https://pypi.org/project/annotated-doc) | 0.0.3 | Document parameters, class attributes, return types, and variables inline, with Annotated. +[annotated-types](https://pypi.org/project/annotated-types) | 0.7.0 | Reusable constraint types to use with typing.Annotated +[ansicolors](https://pypi.org/project/ansicolors) | 1.1.8 | ANSI colors for Python +[anthropic](https://pypi.org/project/anthropic) | 0.75.0 | The official Python library for the anthropic API +[anyio](https://pypi.org/project/anyio) | 4.12.0 | High-level concurrency and networking framework on top of asyncio or Trio +[anywidget](https://pypi.org/project/anywidget) | 0.9.21 | custom jupyter widgets made easy +[argcomplete](https://pypi.org/project/argcomplete) | 3.6.3 | Bash tab completion for argparse +[argon2-cffi](https://pypi.org/project/argon2-cffi) | 25.1.0 | Argon2 for Python +[argon2-cffi-bindings](https://pypi.org/project/argon2-cffi-bindings) | 25.1.0 | Low-level CFFI bindings for Argon2 +[array-api-compat](https://pypi.org/project/array-api-compat) | 1.12.0 | A wrapper around NumPy and other array libraries to make them compatible with the Array API standard +[arrow](https://pypi.org/project/arrow) | 1.3.0 | Better dates & times for Python +[asgi-csrf](https://pypi.org/project/asgi-csrf) | 0.11 | ASGI middleware for protecting against CSRF attacks +[asgiref](https://pypi.org/project/asgiref) | 3.10.0 | ASGI specs, helper code, and adapters +[asn1crypto](https://pypi.org/project/asn1crypto) | 1.5.1 | Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, +[asteval](https://pypi.org/project/asteval) | 1.0.5 | Safe, minimalistic evaluator of python expression using ast module +[astroid](https://pypi.org/project/astroid) | 4.0.2 | An abstract syntax tree for Python with inference support. +[astropy](https://pypi.org/project/astropy) | 7.1.1 | Astronomy and astrophysics core library +[astropy-iers-data](https://pypi.org/project/astropy-iers-data) | 0.2025.9.29.0.35.48 | IERS Earth Rotation and Leap Second tables for the astropy core package +[asttokens](https://pypi.org/project/asttokens) | 3.0.1 | Annotate AST trees with source code positions +[async-lru](https://pypi.org/project/async-lru) | 2.0.5 | Simple LRU cache for asyncio +[asyncssh](https://pypi.org/project/asyncssh) | 2.21.0 | AsyncSSH: Asynchronous SSHv2 client and server library +[atomicwrites](https://pypi.org/project/atomicwrites) | 1.4.0 | Atomic file writes. +[attrs](https://pypi.org/project/attrs) | 25.4.0 | Classes Without Boilerplate +[autopep8](https://pypi.org/project/autopep8) | 2.0.4 | A tool that automatically formats Python code to conform to the PEP 8 style guide +[azure-core](https://pypi.org/project/azure-core) | 1.36.0 | Microsoft Azure Core Library for Python +[azure-cosmos](https://pypi.org/project/azure-cosmos) | 4.14.2 | Microsoft Azure Cosmos Client Library for Python +[azure-identity](https://pypi.org/project/azure-identity) | 1.25.1 | Microsoft Azure Identity Library for Python +[babel](https://pypi.org/project/babel) | 2.17.0 | Internationalization utilities +[baresql](https://pypi.org/project/baresql) | 1.0.0 | playing SQL directly on Python datas +[bcrypt](https://pypi.org/project/bcrypt) | 5.0.0 | Modern password hashing for your software and your servers +[beautifulsoup4](https://pypi.org/project/beautifulsoup4) | 4.14.2 | Screen-scraping library +[binaryornot](https://pypi.org/project/binaryornot) | 0.4.4 | Ultra-lightweight pure Python package to check if a file is binary or text. +[black](https://pypi.org/project/black) | 25.11.0 | The uncompromising code formatter. +[bleach](https://pypi.org/project/bleach) | 6.2.0 | An easy safelist-based HTML-sanitizing tool. +[blinker](https://pypi.org/project/blinker) | 1.9.0 | Fast, simple object-to-object and broadcast signaling +[bokeh](https://pypi.org/project/bokeh) | 3.8.1 | Interactive plots and applications in the browser from Python +[branca](https://pypi.org/project/branca) | 0.8.1 | Generate complex HTML+JS pages with Python +[brotli](https://pypi.org/project/brotli) | 1.2.0 | Python bindings for the Brotli compression library +[build](https://pypi.org/project/build) | 1.3.0 | A simple, correct Python build frontend +[cachetools](https://pypi.org/project/cachetools) | 6.2.2 | Extensible memoizing collections and decorators +[cattrs](https://pypi.org/project/cattrs) | 1.2.0 | Composable complex class support for attrs. +[certifi](https://pypi.org/project/certifi) | 2025.11.12 | Python package for providing Mozilla's CA Bundle. +[cffi](https://pypi.org/project/cffi) | 2.0.0 | Foreign Function Interface for Python calling C code. +[chardet](https://pypi.org/project/chardet) | 5.2.0 | Universal encoding detector for Python 3 +[charset-normalizer](https://pypi.org/project/charset-normalizer) | 3.4.3 | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. +[clarabel](https://pypi.org/project/clarabel) | 0.11.1 | Clarabel Conic Interior Point Solver for Rust / Python +[click](https://pypi.org/project/click) | 8.3.0 | Composable command line interface toolkit +[click-default-group](https://pypi.org/project/click-default-group) | 1.2.4 | click_default_group +[cloudpickle](https://pypi.org/project/cloudpickle) | 3.1.2 | Pickler class to extend the standard pickle.Pickler functionality +[cohere](https://pypi.org/project/cohere) | 5.20.0 | +[colorama](https://pypi.org/project/colorama) | 0.4.6 | Cross-platform colored terminal text. +[colorlog](https://pypi.org/project/colorlog) | 6.9.0 | Add colours to the output of Python's logging module. +[comm](https://pypi.org/project/comm) | 0.2.3 | Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. +[contourpy](https://pypi.org/project/contourpy) | 1.3.3 | Python library for calculating contours of 2D quadrilateral grids +[cookiecutter](https://pypi.org/project/cookiecutter) | 2.6.0 | A command-line utility that creates projects from project templates, e.g. +[cryptography](https://pypi.org/project/cryptography) | 46.0.3 | cryptography is a package which provides cryptographic recipes and primitives to Python developers. +[cycler](https://pypi.org/project/cycler) | 0.12.1 | Composable style cycles +[cython](https://pypi.org/project/cython) | 3.2.3 | The Cython compiler for writing C extensions in the Python language. +[cytoolz](https://pypi.org/project/cytoolz) | 1.1.0 | Cython implementation of Toolz: High performance functional utilities +[datasette](https://pypi.org/project/datasette) | 0.65.2 | An open source multi-tool for exploring and publishing data +[datasette-graphql](https://pypi.org/project/datasette-graphql) | 2.2 | Datasette plugin providing an automatic GraphQL API for your SQLite databases +[debugpy](https://pypi.org/project/debugpy) | 1.8.17 | An implementation of the Debug Adapter Protocol for Python +[decorator](https://pypi.org/project/decorator) | 5.2.1 | Decorators for Humans +[defusedxml](https://pypi.org/project/defusedxml) | 0.7.1 | XML bomb protection for Python stdlib modules +[deprecated](https://pypi.org/project/deprecated) | 1.3.1 | Python @deprecated decorator to deprecate old python classes, functions or methods. +[diff-match-patch](https://pypi.org/project/diff-match-patch) | 20241021 | Repackaging of Google's Diff Match and Patch libraries. +[dill](https://pypi.org/project/dill) | 0.4.0 | serialize all of Python +[distro](https://pypi.org/project/distro) | 1.9.0 | Distro - an OS platform information API +[django](https://pypi.org/project/django) | 5.2.8 | A high-level Python web framework that encourages rapid development and clean, pragmatic design. +[dnspython](https://pypi.org/project/dnspython) | 2.7.0 | DNS toolkit +[docstring-parser](https://pypi.org/project/docstring-parser) | 0.17.0 | Parse Python docstrings in reST, Google and Numpydoc format +[docstring-to-markdown](https://pypi.org/project/docstring-to-markdown) | 0.17 | On the fly conversion of Python docstrings to markdown +[docutils](https://pypi.org/project/docutils) | 0.21.2 | Docutils -- Python Documentation Utilities +[duckdb](https://pypi.org/project/duckdb) | 1.4.3 | DuckDB in-process database +[entrypoints](https://pypi.org/project/entrypoints) | 0.4 | Discover and load entry points from installed packages. +[et-xmlfile](https://pypi.org/project/et-xmlfile) | 2.0.0 | An implementation of lxml.xmlfile for the standard library +[eval-type-backport](https://pypi.org/project/eval-type-backport) | 0.3.1 | Like `typing._eval_type`, but lets older Python versions use newer typing features. +[executing](https://pypi.org/project/executing) | 2.2.1 | Get the currently executing AST node of a frame, and other information +[faker](https://pypi.org/project/faker) | 38.2.0 | Faker is a Python package that generates fake data for you. +[fasta2a](https://pypi.org/project/fasta2a) | 0.6.0 | Convert an AI Agent into a A2A server! ✨ +[fastapi](https://pypi.org/project/fastapi) | 0.123.9 | FastAPI framework, high performance, easy to learn, fast to code, ready for production +[fastavro](https://pypi.org/project/fastavro) | 1.12.1 | Fast read/write of AVRO files +[fastjsonschema](https://pypi.org/project/fastjsonschema) | 2.21.2 | Fastest Python implementation of JSON schema +[filelock](https://pypi.org/project/filelock) | 3.20.0 | A platform independent file lock. +[flake8](https://pypi.org/project/flake8) | 7.1.1 | the modular source code checker: pep8 pyflakes and co +[flask](https://pypi.org/project/flask) | 3.1.2 | A simple framework for building complex web applications. +[flexcache](https://pypi.org/project/flexcache) | 0.3 | Saves and loads to the cache a transformed versions of a source object. +[flexparser](https://pypi.org/project/flexparser) | 0.4 | Parsing made fun ... using typing. +[flit](https://pypi.org/project/flit) | 3.12.0 | A simple packaging tool for simple packages. +[flit-core](https://pypi.org/project/flit-core) | 3.12.0 | Distribution-building parts of Flit. See flit package for more information +[folium](https://pypi.org/project/folium) | 0.20.0 | Make beautiful maps with Leaflet.js & Python +[fonttools](https://pypi.org/project/fonttools) | 4.61.0 | Tools to manipulate font files +[fqdn](https://pypi.org/project/fqdn) | 1.5.1 | Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers +[frozenlist](https://pypi.org/project/frozenlist) | 1.8.0 | A list-like structure which implements collections.abc.MutableSequence +[fsspec](https://pypi.org/project/fsspec) | 2025.9.0 | File-system specification +[fuzzywuzzy](https://pypi.org/project/fuzzywuzzy) | 0.18.0 | Fuzzy string matching in python +[genai-prices](https://pypi.org/project/genai-prices) | 0.0.38 | Calculate prices for calling LLM inference APIs. +[geographiclib](https://pypi.org/project/geographiclib) | 2.1 | The geodesic routines from GeographicLib +[geopandas](https://pypi.org/project/geopandas) | 1.1.1 | Geographic pandas extensions +[geopy](https://pypi.org/project/geopy) | 2.4.1 | Python Geocoding Toolbox +[google-auth](https://pypi.org/project/google-auth) | 2.43.0 | Google Authentication Library +[google-genai](https://pypi.org/project/google-genai) | 1.55.0 | GenAI Python SDK +[graphene](https://pypi.org/project/graphene) | 3.4.3 | GraphQL Framework for Python +[graphql-core](https://pypi.org/project/graphql-core) | 3.2.6 | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. +[graphql-relay](https://pypi.org/project/graphql-relay) | 3.2.0 | Relay library for graphql-core +[greenlet](https://pypi.org/project/greenlet) | 3.2.4 | Lightweight in-process concurrent programming +[griffe](https://pypi.org/project/griffe) | 1.14.0 | Signatures for entire Python programs. +[groq](https://pypi.org/project/groq) | 0.37.1 | The official Python library for the groq API +[guidata](https://pypi.org/project/guidata) | 3.13.4 | Automatic GUI generation for easy dataset editing and display +[h11](https://pypi.org/project/h11) | 0.16.0 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 +[h2](https://pypi.org/project/h2) | 4.2.0 | Pure-Python HTTP/2 protocol implementation +[h5py](https://pypi.org/project/h5py) | 3.15.1 | Read and write HDF5 files from Python +[hatchling](https://pypi.org/project/hatchling) | 1.28.0 | Modern, extensible Python build backend +[hf-xet](https://pypi.org/project/hf-xet) | 1.2.0 | Fast transfer of large files with the Hugging Face Hub. +[hpack](https://pypi.org/project/hpack) | 4.1.0 | Pure-Python HPACK header encoding +[html5lib](https://pypi.org/project/html5lib) | 1.1 | HTML parser based on the WHATWG HTML specification +[httpcore](https://pypi.org/project/httpcore) | 1.0.9 | A minimal low-level HTTP client. +[httpie](https://pypi.org/project/httpie) | 3.2.4 | HTTPie: modern, user-friendly command-line HTTP client for the API era. +[httpx](https://pypi.org/project/httpx) | 0.28.1 | The next generation HTTP client. +[httpx-sse](https://pypi.org/project/httpx-sse) | 0.4.0 | Consume Server-Sent Event (SSE) messages with HTTPX. +[huggingface-hub](https://pypi.org/project/huggingface-hub) | 1.2.3 | Client library to download and publish models, datasets and other repos on the huggingface.co hub +[hupper](https://pypi.org/project/hupper) | 1.12.1 | Integrated process monitor for developing and reloading daemons. +[hypercorn](https://pypi.org/project/hypercorn) | 0.17.3 | A ASGI Server based on Hyper libraries and inspired by Gunicorn +[hyperframe](https://pypi.org/project/hyperframe) | 6.1.0 | Pure-Python HTTP/2 framing +[hypothesis](https://pypi.org/project/hypothesis) | 6.148.7 | The property-based testing library for Python +[id](https://pypi.org/project/id) | 1.5.0 | A tool for generating OIDC identities +[idna](https://pypi.org/project/idna) | 3.11 | Internationalized Domain Names in Applications (IDNA) +[imageio](https://pypi.org/project/imageio) | 2.37.0 | Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. +[imagesize](https://pypi.org/project/imagesize) | 1.4.1 | Getting image size from png/jpeg/jpeg2000/gif file +[imbalanced-learn](https://pypi.org/project/imbalanced-learn) | 0.14.0 | Toolbox for imbalanced dataset in machine learning +[importlib-metadata](https://pypi.org/project/importlib-metadata) | 8.7.0 | Read metadata from Python packages +[inflection](https://pypi.org/project/inflection) | 0.5.1 | A port of Ruby on Rails inflector to Python +[iniconfig](https://pypi.org/project/iniconfig) | 2.1.0 | brain-dead simple config-ini parsing +[intervaltree](https://pypi.org/project/intervaltree) | 3.1.0 | Editable interval tree data structure for Python 2 and 3 +[invoke](https://pypi.org/project/invoke) | 2.2.1 | Pythonic task execution +[ipycanvas](https://pypi.org/project/ipycanvas) | 0.14.3 | Interactive widgets library exposing the browser's Canvas API +[ipykernel](https://pypi.org/project/ipykernel) | 6.31.0 | IPython Kernel for Jupyter +[ipyleaflet](https://pypi.org/project/ipyleaflet) | 0.20.0 | A Jupyter widget for dynamic Leaflet maps +[ipympl](https://pypi.org/project/ipympl) | 0.9.8 | Matplotlib Jupyter Extension +[ipython](https://pypi.org/project/ipython) | 9.8.0 | IPython: Productive Interactive Computing +[ipython-genutils](https://pypi.org/project/ipython-genutils) | 0.2.0 | Vestigial utilities from IPython +[ipython-pygments-lexers](https://pypi.org/project/ipython-pygments-lexers) | 1.1.1 | Defines a variety of Pygments lexers for highlighting IPython code. +[ipython-sql](https://pypi.org/project/ipython-sql) | 0.5.0 | RDBMS access via IPython +[ipywidgets](https://pypi.org/project/ipywidgets) | 8.1.8 | Jupyter interactive widgets +[isoduration](https://pypi.org/project/isoduration) | 20.11.0 | Operations with ISO 8601 durations +[isort](https://pypi.org/project/isort) | 6.0.1 | A Python utility / library to sort Python imports. +[itsdangerous](https://pypi.org/project/itsdangerous) | 2.2.0 | Safely pass data to untrusted environments and back. +[janus](https://pypi.org/project/janus) | 2.0.0 | Mixed sync-async queue to interoperate between asyncio tasks and classic threads +[jaraco-classes](https://pypi.org/project/jaraco-classes) | 3.4.0 | Utility functions for Python class constructs +[jaraco-context](https://pypi.org/project/jaraco-context) | 6.0.1 | Useful decorators and context managers +[jaraco-functools](https://pypi.org/project/jaraco-functools) | 4.3.0 | Functools like those found in stdlib +[jedi](https://pypi.org/project/jedi) | 0.19.2 | An autocompletion tool for Python that can be used for text editors. +[jellyfish](https://pypi.org/project/jellyfish) | 1.2.1 | +[jinja2](https://pypi.org/project/jinja2) | 3.1.6 | A very fast and expressive template engine. +[jiter](https://pypi.org/project/jiter) | 0.11.1 | Fast iterable JSON parser. +[joblib](https://pypi.org/project/joblib) | 1.5.3 | Lightweight pipelining with Python functions +[json5](https://pypi.org/project/json5) | 0.12.1 | A Python implementation of the JSON5 data format. +[jsonpatch](https://pypi.org/project/jsonpatch) | 1.33 | Apply JSON-Patches (RFC 6902) +[jsonpointer](https://pypi.org/project/jsonpointer) | 3.0.0 | Identify specific nodes in a JSON document (RFC 6901) +[jsonschema](https://pypi.org/project/jsonschema) | 4.24.0 | An implementation of JSON Schema validation for Python +[jsonschema-specifications](https://pypi.org/project/jsonschema-specifications) | 2025.9.1 | The JSON Schema meta-schemas and vocabularies, exposed as a Registry +[julia](https://pypi.org/project/julia) | 0.6.2 | Julia/Python bridge with IPython support. +[jupyter](https://pypi.org/project/jupyter) | 1.1.1 | Jupyter metapackage. Install all the Jupyter components in one go. +[jupyter-bokeh](https://pypi.org/project/jupyter-bokeh) | 4.0.5 | A Jupyter extension for rendering Bokeh content. +[jupyter-client](https://pypi.org/project/jupyter-client) | 8.6.3 | Jupyter protocol implementation and client libraries +[jupyter-console](https://pypi.org/project/jupyter-console) | 6.6.3 | Jupyter terminal console +[jupyter-core](https://pypi.org/project/jupyter-core) | 5.9.1 | Jupyter core package. A base package on which Jupyter projects rely. +[jupyter-events](https://pypi.org/project/jupyter-events) | 0.12.0 | Jupyter Event System library +[jupyter-leaflet](https://pypi.org/project/jupyter-leaflet) | 0.20.0 | ipyleaflet extensions for JupyterLab and Jupyter Notebook +[jupyter-lsp](https://pypi.org/project/jupyter-lsp) | 2.3.0 | Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server +[jupyter-server](https://pypi.org/project/jupyter-server) | 2.17.0 | The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications. +[jupyter-server-terminals](https://pypi.org/project/jupyter-server-terminals) | 0.5.3 | A Jupyter Server Extension Providing Terminals. +[jupyterlab](https://pypi.org/project/jupyterlab) | 4.5.1 | JupyterLab computational environment +[jupyterlab-pygments](https://pypi.org/project/jupyterlab-pygments) | 0.3.0 | Pygments theme using JupyterLab CSS variables +[jupyterlab-server](https://pypi.org/project/jupyterlab-server) | 2.28.0 | A set of server components for JupyterLab and JupyterLab like applications. +[jupyterlab-widgets](https://pypi.org/project/jupyterlab-widgets) | 3.0.15 | Jupyter interactive widgets for JupyterLab +[keras](https://pypi.org/project/keras) | 3.13.0 | Multi-backend Keras +[keyring](https://pypi.org/project/keyring) | 25.6.0 | Store and access your passwords safely. +[kiwisolver](https://pypi.org/project/kiwisolver) | 1.4.9 | A fast implementation of the Cassowary constraint solver +[langchain](https://pypi.org/project/langchain) | 1.1.3 | Building applications with LLMs through composability +[langchain-core](https://pypi.org/project/langchain-core) | 1.2.0 | Building applications with LLMs through composability +[langgraph](https://pypi.org/project/langgraph) | 1.0.5 | Building stateful, multi-actor applications with LLMs +[langgraph-checkpoint](https://pypi.org/project/langgraph-checkpoint) | 3.0.0 | Library with base interfaces for LangGraph checkpoint savers. +[langgraph-prebuilt](https://pypi.org/project/langgraph-prebuilt) | 1.0.5 | Library with high-level APIs for creating and executing LangGraph agents and tools. +[langgraph-sdk](https://pypi.org/project/langgraph-sdk) | 0.3.0 | SDK for interacting with LangGraph API +[langsmith](https://pypi.org/project/langsmith) | 0.4.59 | Client library to connect to the LangSmith Observability and Evaluation Platform. +[librt](https://pypi.org/project/librt) | 0.6.2 | Mypyc runtime library +[llvmlite](https://pypi.org/project/llvmlite) | 0.46.0 | lightweight wrapper around basic LLVM functionality +[lmfit](https://pypi.org/project/lmfit) | 1.3.3 | Least-Squares Minimization with Bounds and Constraints +[locket](https://pypi.org/project/locket) | 1.0.0 | File-based locks for Python on Linux and Windows +[logfire-api](https://pypi.org/project/logfire-api) | 4.14.2 | Shim for the Logfire SDK which does nothing unless Logfire is installed +[lsprotocol](https://pypi.org/project/lsprotocol) | 2023.0.1 | Python implementation of the Language Server Protocol. +[lxml](https://pypi.org/project/lxml) | 6.0.2 | Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. +[mako](https://pypi.org/project/mako) | 1.3.10 | A super-fast templating language that borrows the best ideas from the existing templating languages. +[markdown](https://pypi.org/project/markdown) | 3.9 | Python implementation of John Gruber's Markdown. +[markdown-it-py](https://pypi.org/project/markdown-it-py) | 4.0.0 | Python port of markdown-it. Markdown parsing, done right! +[markupsafe](https://pypi.org/project/markupsafe) | 3.0.3 | Safely add untrusted strings to HTML/XML markup. +[matplotlib](https://pypi.org/project/matplotlib) | 3.10.8 | Python plotting package +[matplotlib-inline](https://pypi.org/project/matplotlib-inline) | 0.2.1 | Inline Matplotlib backend for Jupyter +[maturin](https://pypi.org/project/maturin) | 1.10.2 | Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages +[mccabe](https://pypi.org/project/mccabe) | 0.7.0 | McCabe checker, plugin for flake8 +[mcp](https://pypi.org/project/mcp) | 1.21.0 | Model Context Protocol SDK +[mdurl](https://pypi.org/project/mdurl) | 0.1.2 | Markdown URL utilities +[mercantile](https://pypi.org/project/mercantile) | 1.2.1 | Web mercator XYZ tile utilities +[mergedeep](https://pypi.org/project/mergedeep) | 1.3.4 | A deep merge function for 🐍. +[missingno](https://pypi.org/project/missingno) | 0.5.2 | Missing data visualization module for Python. +[mistralai](https://pypi.org/project/mistralai) | 1.9.11 | Python Client SDK for the Mistral AI API. +[mistune](https://pypi.org/project/mistune) | 3.1.4 | A sane and fast Markdown parser with useful plugins and renderers +[mizani](https://pypi.org/project/mizani) | 0.14.3 | Scales for Python +[ml-dtypes](https://pypi.org/project/ml-dtypes) | 0.5.3 | ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning. +[mlxtend](https://pypi.org/project/mlxtend) | 0.23.4 | Machine Learning Library Extensions +[more-itertools](https://pypi.org/project/more-itertools) | 10.7.0 | More routines for operating on iterables, beyond itertools +[mpld3](https://pypi.org/project/mpld3) | 0.5.12 | D3 Viewer for Matplotlib +[mpmath](https://pypi.org/project/mpmath) | 1.3.0 | Python library for arbitrary-precision floating-point arithmetic +[msal](https://pypi.org/project/msal) | 1.32.3 | The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of us +[msal-extensions](https://pypi.org/project/msal-extensions) | 1.3.1 | Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS an +[multidict](https://pypi.org/project/multidict) | 6.7.0 | multidict implementation +[mypy](https://pypi.org/project/mypy) | 1.19.0 | Optional static typing for Python +[mypy-extensions](https://pypi.org/project/mypy-extensions) | 1.1.0 | Type system extensions for programs checked with the mypy type checker. +[namex](https://pypi.org/project/namex) | 0.1.0 | A simple utility to separate the implementation of your Python package and its public API surface. +[narwhals](https://pypi.org/project/narwhals) | 2.13.0 | Extremely lightweight compatibility layer between dataframe libraries +[nbclient](https://pypi.org/project/nbclient) | 0.10.2 | A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor. +[nbconvert](https://pypi.org/project/nbconvert) | 7.16.6 | Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. +[nbformat](https://pypi.org/project/nbformat) | 5.10.4 | The Jupyter Notebook format +[nest-asyncio](https://pypi.org/project/nest-asyncio) | 1.6.0 | Patch asyncio to allow nested event loops +[networkx](https://pypi.org/project/networkx) | 3.6.1 | Python package for creating and manipulating graphs and networks +[nh3](https://pypi.org/project/nh3) | 0.3.2 | Python binding to Ammonia HTML sanitizer Rust crate +[nltk](https://pypi.org/project/nltk) | 3.9.1 | Natural Language Toolkit +[notebook](https://pypi.org/project/notebook) | 7.5.1 | Jupyter Notebook - A web-based notebook environment for interactive computing +[notebook-shim](https://pypi.org/project/notebook-shim) | 0.2.4 | A shim layer for notebook traits and config +[numba](https://pypi.org/project/numba) | 0.63.1 | compiling Python code using LLVM +[numpy](https://pypi.org/project/numpy) | 2.3.5 | Fundamental package for array computing in Python +[numpydoc](https://pypi.org/project/numpydoc) | 1.8.0 | Sphinx extension to support docstrings in Numpy format +[openai](https://pypi.org/project/openai) | 2.11.0 | The official Python library for the openai API +[openpyxl](https://pypi.org/project/openpyxl) | 3.1.5 | A Python library to read/write Excel 2010 xlsx/xlsm files +[opentelemetry-api](https://pypi.org/project/opentelemetry-api) | 1.34.1 | OpenTelemetry Python API +[optree](https://pypi.org/project/optree) | 0.17.0 | Optimized PyTree Utilities. +[optuna](https://pypi.org/project/optuna) | 4.2.1 | A hyperparameter optimization framework +[orjson](https://pypi.org/project/orjson) | 3.11.4 | Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy +[ormsgpack](https://pypi.org/project/ormsgpack) | 1.12.0 | +[outcome](https://pypi.org/project/outcome) | 1.3.0.post0 | Capture the outcome of Python function calls. +[packaging](https://pypi.org/project/packaging) | 25.0 | Core utilities for Python packages +[pandas](https://pypi.org/project/pandas) | 2.3.3 | Powerful data structures for data analysis, time series, and statistics +[pandocfilters](https://pypi.org/project/pandocfilters) | 1.5.1 | Utilities for writing pandoc filters in python +[papermill](https://pypi.org/project/papermill) | 2.6.0 | Parameterize and run Jupyter and nteract Notebooks +[parso](https://pypi.org/project/parso) | 0.8.5 | A Python Parser +[partd](https://pypi.org/project/partd) | 1.4.2 | Appendable key-value storage +[pathspec](https://pypi.org/project/pathspec) | 0.12.1 | Utility library for gitignore style pattern matching of file paths. +[patsy](https://pypi.org/project/patsy) | 1.0.1 | A Python package for describing statistical models and for building design matrices. +[pep8](https://pypi.org/project/pep8) | 1.7.1 | Python style guide checker +[pexpect](https://pypi.org/project/pexpect) | 4.9.0 | Pexpect allows easy control of interactive console applications. +[pg8000](https://pypi.org/project/pg8000) | 1.31.5 | PostgreSQL interface library +[pickleshare](https://pypi.org/project/pickleshare) | 0.7.5 | Tiny 'shelve'-like database with concurrency support +[pillow](https://pypi.org/project/pillow) | 12.0.0 | Python Imaging Library (fork) +[pip](https://pypi.org/project/pip) | 25.3 | The PyPA recommended tool for installing Python packages. +[pipdeptree](https://pypi.org/project/pipdeptree) | 2.30.0 | Command line utility to show dependency tree of packages. +[platformdirs](https://pypi.org/project/platformdirs) | 4.5.0 | A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`. +[plotly](https://pypi.org/project/plotly) | 6.5.0 | An open-source interactive data visualization library for Python +[plotnine](https://pypi.org/project/plotnine) | 0.15.2 | A Grammar of Graphics for Python +[pluggy](https://pypi.org/project/pluggy) | 1.5.0 | plugin and hook calling mechanisms for python +[ply](https://pypi.org/project/ply) | 3.11 | Python Lex & Yacc +[polars](https://pypi.org/project/polars) | 1.36.1 | Blazingly fast DataFrame library +[polars-runtime-32](https://pypi.org/project/polars-runtime-32) | 1.36.1 | Blazingly fast DataFrame library +[prettytable](https://pypi.org/project/prettytable) | 3.16.0 | A simple Python library for easily displaying tabular data in a visually appealing ASCII table format +[prince](https://pypi.org/project/prince) | 0.16.3 | Factor analysis in Python: PCA, CA, MCA, MFA, FAMD, GPA +[priority](https://pypi.org/project/priority) | 2.0.0 | A pure-Python implementation of the HTTP/2 priority tree +[prometheus-client](https://pypi.org/project/prometheus-client) | 0.21.1 | Python client for the Prometheus monitoring system. +[prompt-toolkit](https://pypi.org/project/prompt-toolkit) | 3.0.52 | Library for building powerful interactive command lines in Python +[propcache](https://pypi.org/project/propcache) | 0.4.1 | Accelerated property cache +[psutil](https://pypi.org/project/psutil) | 7.1.1 | Cross-platform lib for process and system monitoring. +[psycopg2](https://pypi.org/project/psycopg2) | 2.9.11 | psycopg2 - Python-PostgreSQL Database Adapter +[psygnal](https://pypi.org/project/psygnal) | 0.15.0 | Fast python callback/event system modeled after Qt Signals +[ptyprocess](https://pypi.org/project/ptyprocess) | 0.7.0 | Run a subprocess in a pseudo terminal +[pure-eval](https://pypi.org/project/pure-eval) | 0.2.3 | Safely evaluate AST nodes without side effects +[pyasn1](https://pypi.org/project/pyasn1) | 0.6.1 | Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208) +[pyasn1-modules](https://pypi.org/project/pyasn1-modules) | 0.4.1 | A collection of ASN.1-based protocols modules +[pybind11](https://pypi.org/project/pybind11) | 3.0.1 | Seamless operability between C++11 and Python +[pycodestyle](https://pypi.org/project/pycodestyle) | 2.12.0 | Python style guide checker +[pycparser](https://pypi.org/project/pycparser) | 2.23 | C parser in Python +[pydantic](https://pypi.org/project/pydantic) | 2.12.5 | Data validation using Python type hints +[pydantic-ai-slim](https://pypi.org/project/pydantic-ai-slim) | 1.12.0 | Agent Framework / shim to use Pydantic with LLMs, slim package +[pydantic-core](https://pypi.org/project/pydantic-core) | 2.41.5 | Core functionality for Pydantic validation and serialization +[pydantic-evals](https://pypi.org/project/pydantic-evals) | 1.12.0 | Framework for evaluating stochastic code execution, especially code making use of LLMs +[pydantic-graph](https://pypi.org/project/pydantic-graph) | 1.12.0 | Graph and state machine library +[pydantic-settings](https://pypi.org/project/pydantic-settings) | 2.11.0 | Settings management using Pydantic +[pydocstyle](https://pypi.org/project/pydocstyle) | 6.3.0 | Python docstring style checker +[pydot](https://pypi.org/project/pydot) | 4.0.1 | Python interface to Graphviz's Dot +[pydub](https://pypi.org/project/pydub) | 0.25.1 | Manipulate audio with an simple and easy high level interface +[pyerfa](https://pypi.org/project/pyerfa) | 2.0.1.5 | Python bindings for ERFA +[pyflakes](https://pypi.org/project/pyflakes) | 3.2.0 | passive checker of Python programs +[pygithub](https://pypi.org/project/pygithub) | 2.6.1 | Use the full Github API v3 +[pygments](https://pypi.org/project/pygments) | 2.19.1 | Pygments is a syntax highlighting package written in Python. +[pyjwt](https://pypi.org/project/pyjwt) | 2.10.1 | JSON Web Token implementation in Python +[pylint](https://pypi.org/project/pylint) | 4.0.4 | python code static checker +[pylint-venv](https://pypi.org/project/pylint-venv) | 3.0.4 | pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. +[pyls-spyder](https://pypi.org/project/pyls-spyder) | 0.4.0 | Spyder extensions for the python-lsp-server +[pymongo](https://pypi.org/project/pymongo) | 4.15.3 | PyMongo - the Official MongoDB Python driver +[pympler](https://pypi.org/project/pympler) | 1.1 | A development tool to measure, monitor and analyze the memory behavior of Python objects. +[pynacl](https://pypi.org/project/pynacl) | 1.6.1 | Python binding to the Networking and Cryptography (NaCl) library +[pynndescent](https://pypi.org/project/pynndescent) | 0.5.13 | Nearest Neighbor Descent +[pyodbc](https://pypi.org/project/pyodbc) | 5.3.0 | DB API module for ODBC +[pyogrio](https://pypi.org/project/pyogrio) | 0.12.1 | Vectorized spatial vector file format I/O using GDAL/OGR +[pyomo](https://pypi.org/project/pyomo) | 6.9.5 | The Pyomo optimization modeling framework +[pypandoc](https://pypi.org/project/pypandoc) | 1.15 | Thin wrapper for pandoc. +[pyparsing](https://pypi.org/project/pyparsing) | 3.2.5 | pyparsing - Classes and methods to define and execute parsing grammars +[pypdf](https://pypi.org/project/pypdf) | 5.6.0 | A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files +[pyperclip](https://pypi.org/project/pyperclip) | 1.11.0 | A cross-platform clipboard module for Python. (Only handles plain text for now.) +[pyproj](https://pypi.org/project/pyproj) | 3.7.2 | Python interface to PROJ (cartographic projections and coordinate transformations library) +[pyproject-hooks](https://pypi.org/project/pyproject-hooks) | 1.2.0 | Wrappers to call pyproject.toml-based build backend hooks. +[pyqt5](https://pypi.org/project/pyqt5) | 5.15.11 | Python bindings for the Qt cross platform application toolkit +[pyqt5-qt5](https://pypi.org/project/pyqt5-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQt5. +[pyqt5-sip](https://pypi.org/project/pyqt5-sip) | 12.17.1 | The sip module support for PyQt5 +[pyqtgraph](https://pypi.org/project/pyqtgraph) | 0.14.0 | Scientific Graphics and GUI Library for Python +[pyqtwebengine](https://pypi.org/project/pyqtwebengine) | 5.15.7 | Python bindings for the Qt WebEngine framework +[pyqtwebengine-qt5](https://pypi.org/project/pyqtwebengine-qt5) | 5.15.2 | The subset of a Qt installation needed by PyQtWebEngine. +[pyserial](https://pypi.org/project/pyserial) | 3.5 | Python Serial Port Extension +[pysocks](https://pypi.org/project/pysocks) | 1.7.1 | A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information. +[pyspnego](https://pypi.org/project/pyspnego) | 0.11.2 | Windows Negotiate Authentication Client and Server +[pytest](https://pypi.org/project/pytest) | 8.4.1 | pytest: simple powerful testing with Python +[python-barcode](https://pypi.org/project/python-barcode) | 0.16.1 | Create standard barcodes with Python. No external modules needed. (optional Pillow support included). +[python-dateutil](https://pypi.org/project/python-dateutil) | 2.8.2 | Extensions to the standard Python datetime module +[python-dotenv](https://pypi.org/project/python-dotenv) | 1.1.0 | Read key-value pairs from a .env file and set them as environment variables +[python-json-logger](https://pypi.org/project/python-json-logger) | 3.3.0 | JSON Log Formatter for the Python Logging Package +[python-lsp-black](https://pypi.org/project/python-lsp-black) | 2.0.0 | Black plugin for the Python LSP Server +[python-lsp-jsonrpc](https://pypi.org/project/python-lsp-jsonrpc) | 1.1.2 | JSON RPC 2.0 server library +[python-lsp-ruff](https://pypi.org/project/python-lsp-ruff) | 2.3.0 | Ruff linting plugin for pylsp +[python-lsp-server](https://pypi.org/project/python-lsp-server) | 1.14.0 | Python Language Server for the Language Server Protocol +[python-multipart](https://pypi.org/project/python-multipart) | 0.0.20 | A streaming multipart parser for Python +[python-slugify](https://pypi.org/project/python-slugify) | 8.0.4 | A Python slugify application that also handles Unicode +[pythonqwt](https://pypi.org/project/pythonqwt) | 0.15.0 | Qt plotting widgets for Python +[pytokens](https://pypi.org/project/pytokens) | 0.3.0 | A Fast, spec compliant Python 3.14+ tokenizer that runs on older Pythons. +[pytoolconfig](https://pypi.org/project/pytoolconfig) | 1.3.1 | Python tool configuration +[pytz](https://pypi.org/project/pytz) | 2025.2 | World timezone definitions, modern and historical +[pyuca](https://pypi.org/project/pyuca) | 1.2 | a Python implementation of the Unicode Collation Algorithm +[pyusb](https://pypi.org/project/pyusb) | 1.3.1 | Easy USB access for Python +[pyvisa](https://pypi.org/project/pyvisa) | 1.15.0 | Python VISA bindings for GPIB, RS232, TCPIP and USB instruments +[pywavelets](https://pypi.org/project/pywavelets) | 1.9.0 | PyWavelets, wavelet transform module +[pywin32](https://pypi.org/project/pywin32) | 311 | Python for Window Extensions +[pywin32-ctypes](https://pypi.org/project/pywin32-ctypes) | 0.2.3 | A (partial) reimplementation of pywin32 using ctypes/cffi +[pywinpty](https://pypi.org/project/pywinpty) | 3.0.2 | Pseudo terminal support for Windows from Python. +[pyyaml](https://pypi.org/project/pyyaml) | 6.0.3 | YAML parser and emitter for Python +[pyzmq](https://pypi.org/project/pyzmq) | 27.1.0 | Python bindings for 0MQ +[qdarkstyle](https://pypi.org/project/qdarkstyle) | 3.2.3 | The most complete dark/light style sheet for C++/Python and Qt applications +[qrcode](https://pypi.org/project/qrcode) | 8.2 | QR Code image generator +[qstylizer](https://pypi.org/project/qstylizer) | 0.2.4 | Stylesheet Generator for PyQt{4-5}/PySide{1-2} +[qtawesome](https://pypi.org/project/qtawesome) | 1.4.0 | FontAwesome icons in PyQt and PySide applications +[qtconsole](https://pypi.org/project/qtconsole) | 5.7.0 | Jupyter Qt console +[qtpy](https://pypi.org/project/qtpy) | 2.4.3 | Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6). +[quantecon](https://pypi.org/project/quantecon) | 0.10.1 | Import the main names to top level. +[quart](https://pypi.org/project/quart) | 0.20.0 | A Python ASGI web framework with the same API as Flask +[rapidfuzz](https://pypi.org/project/rapidfuzz) | 3.14.3 | rapid fuzzy string matching +[readme-renderer](https://pypi.org/project/readme-renderer) | 44.0 | readme_renderer is a library for rendering readme descriptions for Warehouse +[redis](https://pypi.org/project/redis) | 5.2.1 | Python client for Redis database and key-value store +[referencing](https://pypi.org/project/referencing) | 0.37.0 | JSON Referencing + Python +[regex](https://pypi.org/project/regex) | 2025.10.23 | Alternative regular expression module, to replace re. +[reportlab](https://pypi.org/project/reportlab) | 4.4.2 | The Reportlab Toolkit +[requests](https://pypi.org/project/requests) | 2.32.5 | Python HTTP for Humans. +[requests-ntlm](https://pypi.org/project/requests-ntlm) | 1.3.0 | This package allows for HTTP NTLM authentication using the requests library. +[requests-toolbelt](https://pypi.org/project/requests-toolbelt) | 1.0.0 | A utility belt for advanced users of python-requests +[rfc3339-validator](https://pypi.org/project/rfc3339-validator) | 0.1.4 | A pure python RFC3339 validator +[rfc3986](https://pypi.org/project/rfc3986) | 2.0.0 | Validating URI References per RFC 3986 +[rfc3986-validator](https://pypi.org/project/rfc3986-validator) | 0.1.1 | Pure python rfc3986 validator +[rich](https://pypi.org/project/rich) | 14.1.0 | Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal +[roman-numerals-py](https://pypi.org/project/roman-numerals-py) | 3.1.0 | Manipulate well-formed Roman numerals +[rope](https://pypi.org/project/rope) | 1.14.0 | a python refactoring library... +[rpds-py](https://pypi.org/project/rpds-py) | 0.27.1 | Python bindings to Rust's persistent data structures (rpds) +[rsa](https://pypi.org/project/rsa) | 4.9.1 | Pure-Python RSA implementation +[rtree](https://pypi.org/project/rtree) | 1.4.0 | R-Tree spatial index for Python GIS +[ruff](https://pypi.org/project/ruff) | 0.14.7 | An extremely fast Python linter and code formatter, written in Rust. +[rx](https://pypi.org/project/rx) | 3.2.0 | Reactive Extensions (Rx) for Python +[scikit-learn](https://pypi.org/project/scikit-learn) | 1.8.0 | A set of python modules for machine learning and data mining +[scipy](https://pypi.org/project/scipy) | 1.16.3 | Fundamental algorithms for scientific computing in Python +[scramp](https://pypi.org/project/scramp) | 1.4.5 | An implementation of the SCRAM protocol. +[scs](https://pypi.org/project/scs) | 3.2.9 | Splitting conic solver +[seaborn](https://pypi.org/project/seaborn) | 0.13.2 | Statistical data visualization +[send2trash](https://pypi.org/project/send2trash) | 1.8.3 | Send file to trash natively under Mac OS X, Windows and Linux +[setuptools](https://pypi.org/project/setuptools) | 80.9.0 | Easily download, build, install, upgrade, and uninstall Python packages +[shapely](https://pypi.org/project/shapely) | 2.1.2 | Manipulation and analysis of geometric objects +[shellingham](https://pypi.org/project/shellingham) | 1.5.4 | Tool to Detect Surrounding Shell +[simplejson](https://pypi.org/project/simplejson) | 3.20.2 | Simple, fast, extensible JSON encoder/decoder for Python +[simpy](https://pypi.org/project/simpy) | 4.1.1 | Event discrete, process based simulation for Python. +[six](https://pypi.org/project/six) | 1.17.0 | Python 2 and 3 compatibility utilities +[skrub](https://pypi.org/project/skrub) | 0.7.0 | Machine learning with dataframes +[sniffio](https://pypi.org/project/sniffio) | 1.3.1 | Sniff out which async library your code is running under +[snowballstemmer](https://pypi.org/project/snowballstemmer) | 3.0.1 | This package provides 32 stemmers for 30 languages generated from Snowball algorithms. +[sortedcontainers](https://pypi.org/project/sortedcontainers) | 2.4.0 | Sorted Containers -- Sorted List, Sorted Dict, Sorted Set +[sounddevice](https://pypi.org/project/sounddevice) | 0.5.3 | Play and Record Sound with Python +[soundfile](https://pypi.org/project/soundfile) | 0.13.1 | An audio library based on libsndfile, CFFI and NumPy +[soupsieve](https://pypi.org/project/soupsieve) | 2.8 | A modern CSS selector implementation for Beautiful Soup. +[sphinx](https://pypi.org/project/sphinx) | 8.2.3 | Python documentation generator +[sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme) | 3.0.2 | Read the Docs theme for Sphinx +[sphinxcontrib-applehelp](https://pypi.org/project/sphinxcontrib-applehelp) | 2.0.0 | sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books +[sphinxcontrib-devhelp](https://pypi.org/project/sphinxcontrib-devhelp) | 2.0.0 | sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents +[sphinxcontrib-htmlhelp](https://pypi.org/project/sphinxcontrib-htmlhelp) | 2.1.0 | sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files +[sphinxcontrib-jquery](https://pypi.org/project/sphinxcontrib-jquery) | 4.1 | Extension to include jQuery on newer Sphinx releases +[sphinxcontrib-jsmath](https://pypi.org/project/sphinxcontrib-jsmath) | 1.0.1 | A sphinx extension which renders display math in HTML via JavaScript +[sphinxcontrib-qthelp](https://pypi.org/project/sphinxcontrib-qthelp) | 2.0.0 | sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents +[sphinxcontrib-serializinghtml](https://pypi.org/project/sphinxcontrib-serializinghtml) | 2.0.0 | sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle) +[spyder](https://pypi.org/project/spyder) | 6.1.2 | The Scientific Python Development Environment +[spyder-kernels](https://pypi.org/project/spyder-kernels) | 3.1.2 | Jupyter kernels for Spyder's console +[sqlalchemy](https://pypi.org/project/sqlalchemy) | 2.0.44 | Database Abstraction Library +[sqlite-bro](https://pypi.org/project/sqlite-bro) | 0.13.1 | a graphic SQLite Client in 1 Python file +[sqlite-fts4](https://pypi.org/project/sqlite-fts4) | 1.0.3 | Python functions for working with SQLite FTS4 search +[sqlite-utils](https://pypi.org/project/sqlite-utils) | 3.38 | CLI tool and Python library for manipulating SQLite databases +[sqlparse](https://pypi.org/project/sqlparse) | 0.5.3 | A non-validating SQL parser. +[squarify](https://pypi.org/project/squarify) | 0.4.4 | Pure Python implementation of the squarify treemap layout algorithm +[sse-starlette](https://pypi.org/project/sse-starlette) | 3.0.2 | SSE plugin for Starlette +[sspilib](https://pypi.org/project/sspilib) | 0.5.0 | SSPI API bindings for Python +[stack-data](https://pypi.org/project/stack-data) | 0.6.3 | Extract data from python stack frames and tracebacks for informative displays +[starlette](https://pypi.org/project/starlette) | 0.50.0 | The little ASGI library that shines. +[statsmodels](https://pypi.org/project/statsmodels) | 0.14.6 | Statistical computations and models for Python +[superqt](https://pypi.org/project/superqt) | 0.7.6 | Missing widgets and components for PyQt/PySide +[sv-ttk](https://pypi.org/project/sv-ttk) | 2.6.0 | A gorgeous theme for Tkinter, based on Windows 11's UI +[sympy](https://pypi.org/project/sympy) | 1.14.0 | Computer algebra system (CAS) in Python +[tabulate](https://pypi.org/project/tabulate) | 0.9.0 | Pretty-print tabular data +[tenacity](https://pypi.org/project/tenacity) | 9.1.2 | Retry code until it succeeds +[termcolor](https://pypi.org/project/termcolor) | 3.1.0 | ANSI color formatting for output in terminal +[terminado](https://pypi.org/project/terminado) | 0.18.1 | Tornado websocket backend for the Xterm.js Javascript terminal emulator library. +[text-unidecode](https://pypi.org/project/text-unidecode) | 1.3 | The most basic Text::Unidecode port +[textdistance](https://pypi.org/project/textdistance) | 4.6.3 | Compute distance between the two texts. +[thefuzz](https://pypi.org/project/thefuzz) | 0.22.1 | Fuzzy string matching in python +[threadpoolctl](https://pypi.org/project/threadpoolctl) | 3.6.0 | threadpoolctl +[three-merge](https://pypi.org/project/three-merge) | 0.1.1 | Simple library for merging two strings with respect to a base one +[tiktoken](https://pypi.org/project/tiktoken) | 0.12.0 | tiktoken is a fast BPE tokeniser for use with OpenAI's models +[tinycss2](https://pypi.org/project/tinycss2) | 1.4.0 | A tiny CSS parser +[tokenizers](https://pypi.org/project/tokenizers) | 0.22.1 | +[tomli-w](https://pypi.org/project/tomli-w) | 1.2.0 | A lil' TOML writer +[tomlkit](https://pypi.org/project/tomlkit) | 0.13.2 | Style preserving TOML library +[toolz](https://pypi.org/project/toolz) | 1.0.0 | List processing tools and functional utilities +[tornado](https://pypi.org/project/tornado) | 6.5.4 | Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. +[tqdm](https://pypi.org/project/tqdm) | 4.67.1 | Fast, Extensible Progress Meter +[traitlets](https://pypi.org/project/traitlets) | 5.14.3 | Traitlets Python configuration system +[traittypes](https://pypi.org/project/traittypes) | 0.2.1 | Scipy trait types +[trio](https://pypi.org/project/trio) | 0.32.0 | A friendly Python library for async concurrency and I/O +[trove-classifiers](https://pypi.org/project/trove-classifiers) | 2025.9.11.17 | Canonical source for classifiers on PyPI (pypi.org). +[twine](https://pypi.org/project/twine) | 6.1.0 | Collection of utilities for publishing packages on PyPI +[typer](https://pypi.org/project/typer) | 0.20.1 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[typer-slim](https://pypi.org/project/typer-slim) | 0.20.0 | Typer, build great CLIs. Easy to code. Based on Python type hints. +[types-python-dateutil](https://pypi.org/project/types-python-dateutil) | 2.9.0.20250822 | Typing stubs for python-dateutil +[types-requests](https://pypi.org/project/types-requests) | 2.32.0.20250328 | Typing stubs for requests +[typing-extensions](https://pypi.org/project/typing-extensions) | 4.15.0 | Backported and Experimental Type Hints for Python 3.9+ +[typing-inspection](https://pypi.org/project/typing-inspection) | 0.4.2 | Runtime typing introspection tools +[tzdata](https://pypi.org/project/tzdata) | 2025.2 | Provider of IANA time zone data +[tzlocal](https://pypi.org/project/tzlocal) | 5.3.1 | tzinfo object for the local timezone +[ujson](https://pypi.org/project/ujson) | 5.11.0 | Ultra fast JSON encoder and decoder for Python +[umap-learn](https://pypi.org/project/umap-learn) | 0.5.9.post2 | Uniform Manifold Approximation and Projection +[uncertainties](https://pypi.org/project/uncertainties) | 3.2.3 | calculations with values with uncertainties, error propagation +[uri-template](https://pypi.org/project/uri-template) | 1.3.0 | RFC 6570 URI Template Processor +[urllib3](https://pypi.org/project/urllib3) | 2.5.0 | HTTP library with thread-safe connection pooling, file post, and more. +[uuid-utils](https://pypi.org/project/uuid-utils) | 0.12.0 | Drop-in replacement for Python UUID with bindings in Rust +[uvicorn](https://pypi.org/project/uvicorn) | 0.38.0 | The lightning-fast ASGI server. +[vega-datasets](https://pypi.org/project/vega-datasets) | 0.9.0 | A Python package for offline access to Vega datasets +[waitress](https://pypi.org/project/waitress) | 3.0.2 | Waitress WSGI server +[watchdog](https://pypi.org/project/watchdog) | 6.0.0 | Filesystem events monitoring +[wcwidth](https://pypi.org/project/wcwidth) | 0.2.13 | Measures the displayed width of unicode strings in a terminal +[webcolors](https://pypi.org/project/webcolors) | 24.11.1 | A library for working with the color formats defined by HTML and CSS. +[webencodings](https://pypi.org/project/webencodings) | 0.5.1 | Character encoding aliases for legacy web content +[websocket-client](https://pypi.org/project/websocket-client) | 1.9.0 | WebSocket client for Python with low level API options +[websockets](https://pypi.org/project/websockets) | 15.0.1 | An implementation of the WebSocket Protocol (RFC 6455 & 7692) +[werkzeug](https://pypi.org/project/werkzeug) | 3.1.3 | The comprehensive WSGI web application library. +[whatthepatch](https://pypi.org/project/whatthepatch) | 1.0.7 | A patch parsing and application library. +[wheel](https://pypi.org/project/wheel) | 0.45.1 | A built-package format for Python +[widgetsnbextension](https://pypi.org/project/widgetsnbextension) | 4.0.15 | Jupyter interactive widgets for Jupyter Notebook +[wordcloud](https://pypi.org/project/wordcloud) | 1.9.5 | A little word cloud generator +[wrapt](https://pypi.org/project/wrapt) | 2.0.1 | Module for decorators, wrappers and monkey patching. +[wsproto](https://pypi.org/project/wsproto) | 1.2.0 | WebSockets state-machine based protocol implementation +[xarray](https://pypi.org/project/xarray) | 2025.11.0 | N-D labeled arrays and datasets in Python +[xlsxwriter](https://pypi.org/project/xlsxwriter) | 3.2.9 | A Python module for creating Excel XLSX files. +[xxhash](https://pypi.org/project/xxhash) | 3.6.0 | Python binding for xxHash +[xyzservices](https://pypi.org/project/xyzservices) | 2025.4.0 | Source of XYZ tiles providers +[yapf](https://pypi.org/project/yapf) | 0.43.0 | A formatter for Python code +[yarl](https://pypi.org/project/yarl) | 1.22.0 | Yet another URL library +[yt-dlp](https://pypi.org/project/yt-dlp) | 2025.9.26 | A feature-rich command-line audio/video downloader +[zipp](https://pypi.org/project/zipp) | 3.23.0 | Backport of pathlib-compatible object wrapper for zip files +[zstandard](https://pypi.org/project/zstandard) | 0.25.0 | Zstandard bindings for Python + + + diff --git a/changelogs/md5_sha1.txt b/changelogs/md5_sha1.txt index d9d3af90..e75d2558 100644 --- a/changelogs/md5_sha1.txt +++ b/changelogs/md5_sha1.txt @@ -1,3 +1,147 @@ +### WinPython 2025-05 release (December 27th, 2025) + +MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|----------------------|----------------------------------------------------------------- +b024b94c2b71efe83449a0ce5187c738 | 661e56d6b1eef07f35e89e61391ca82a8c76e922 | 6aa266700f7221c26b368d30214e87b5c1739b152a25835bf1d8b5b7bea889de | WinPython64-3.13.11.0dot.exe | 17 102 170 Bytes | c57c0273da1b873306aabf584d49bf8460ddf31e610e3e10f52cdde99e0b28ec +643296ada08e09ab9c0aef26a96a018e | e11c71bd99e6bbb3397d4e94bdf54a40feebc755 | b16e28f9c4694ff2687475fdd42a0a88c41cfa2131f9752888a5effe938bab6d | WinPython64-3.13.11.0dot.zip | 27 924 172 Bytes | 7122a18c73181a690787381bacca9eb9c9f2ef52c2793226587ae70ad80eaf70 +f82a95af92230a9c469ac7fdb8e25689 | 2b0e90953d66e76b6bdacf9a527a6c887a285026 | d177f8cb1c65b140c600660a5150a3076d6c9683e0ed248d8765e7cc87de4f7c | WinPython64-3.13.11.0slim.7z | 652 827 504 Bytes | 249e953a312a55a1ac603f2eef7a356c402036f4ae148a1e664d245fd6a6cac5 +4cf78db45447012fa28df784f193f465 | eb13fa9ffb372cbee3976980da5138d05c07108f | beef5086c728a93f16b63e72cb036904efc8b8f290d42a340876aeaaa0d228f6 | WinPython64-3.13.11.0slim.exe | 653 041 917 Bytes | fce53ff056953c3f8d2b2f8604219438a9ee0e6d6be18557dd5e0be8a5bc5562 +e315e41352f3eac7fb6bf2c6d0377ca8 | 665efe9364326778d7fcd126634259f95b9def14 | e11dba9049331996a45ab49a13ff400a216ebf9dad5f96578be1526ccafe1bf3 | WinPython64-3.13.11.0whl.7z | 682 180 032 Bytes | 07fed883a4530172673a06461418ec2eaa1c1fa4cde7af6669f82ffa6fddab2f +ba0b65a0ddc95fcad152c55353d4c845 | 447c2af9663da0f9864644b2a65e7cfa018b3164 | 2e171c3ffff57a248a4169711d06e9e18d668254e831259e0abeb3826352deec | WinPython64-3.14.2.0dot.exe | 17 550 857 Bytes | f5f800515d552779a8c0579bfd3b0133310308cf971810416889fe24b950770e +02a650909cff927352239de8d9ca0362 | 07e464c3259e5be0d139dbe110f4baf6d3fd8ec7 | cc7b8945c5a83b82ba5b521acd49974d6c13c775e48ba2214223ff1e0c4a71cf | WinPython64-3.14.2.0dot.zip | 28 534 934 Bytes | f96a25950a64478845f4fcb71d00dfe3bb07c6b10c53d79a6acad03526959eaf +c3ab8e8db3850c2af664b40e20cd4ee9 | 32345e35962d5bc7f26808bc30785acd2d9ce817 | 16c5ce9bf81b465da7d9ef459da8b231449aed17e58c75f7d69b61cd0c1684c8 | WinPython64-3.14.2.0free.exe | 35 879 390 Bytes | cd6dd227382be83c62c3ac8f684cc92a9f1e788f11889b55c15068afa8513210 +2c161da507a9c2dc13eebadeb366c8dd | ec4bb578efa541f79c3da58115ccf96223039bbb | 56104765d1652a24a78e052710028807ad13bb49a0088e9176e2158e1f5ed535 | WinPython64-3.14.2.0free.zip | 63 333 518 Bytes | 0c5b694bd31cc5027a2ed79cc3fee4c27bb4b038eeab5d5de1ec16ad74f188e6 +7542393b5d5c562492b4b83f1add4956 | afe365a5b82fbdfef7cae5e67a0ffc8633b889cd | c669b79ae00e463070cee551f30a58ba64d19450ff1f8506b4a9593b638b4d1c | WinPython64-3.14.2.0slim.7z | 629 942 261 Bytes | b019bda7069d4423d5efe5ddc48a6e403ac5a4dc55d66fbc5ea8ec2069bcd869 +fb9845177149b1182bf0265f482d6d4c | 1aae7aba2dd172aeb8c60ac4ef10ee6fc324a73b | e3cedbca7e4a93c61669d6977981b8b9bed051303e2ab05398af7572d0e40d94 | WinPython64-3.14.2.0slim.exe | 630 156 450 Bytes | c9556d2369dd868f447177c1a51ae1ac82a7a775edf0e02fd2ae0830990ae15c +236d09c310456b8a8bd97cfc4b944265 | f8279fea1b4f458e228724b21c2457b725c5b799 | ccd3f03357e70cc8f1a59dda56abd07c5fbd8a71a37f2c7f9e3bbac066de5ba4 | WinPython64-3.14.2.0slimf.exe | 401 231 921 Bytes | 0ceefd31ebb0c7a6cf39af217bb448f97f0f489d8980436ce6cbf6410f9faec8 +55f4f78e56021824ae4711be21b1a752 | 0dd73e21deb33816b75dfb1fe7ba10fa284ea3db | 8a7064e1faab997354d95aeb942144e516e7a4bc65773cbcacb308fbb7740e3f | WinPython64-3.14.2.0slimf.zip | 709 112 336 Bytes | af5b18e503128947a78a0cbbe097387ebb95331027a08ff303354cbbfcfff4fc +1b2139fc266249d95bd5065a83ff6929 | c5ef282d26a1327f6e0cb2a715ff896747d19647 | eb6c672f289c37087d9c666c9346bb82b8e7aea62c6c1e80104adde703f8dc88 | WinPython64-3.14.2.0whl.7z | 623 600 790 Bytes | adb21905ae2019bf5e680c64fb61c7bef51925b698e31987f2d66c4e13148587 +7fd74d6158a8abe0b4e64b08212800fb | cc4957d57e34bc05d3a828b20a77982441368616 | c0d3d8944795bdff5862b4e5ccf8030be6fc4f72a7c7c9330a56783a990f4b0a | WinPython64-3.15.0.0dot.exe | 18 032 419 Bytes | bbc7d9c5204393e8a806bb97b7a34f7e21b4bdb2033440506c1a5fd2bf264317 +15e39f06c22addf7c3f594324fda69c0 | 9e03e202a66796372631da43a4bdf2f3f03ec123 | e87f313de3c7d89e70cda3160a62f34083d4ed49888302e9b10f94169fda386c | WinPython64-3.15.0.0dot.zip | 29 178 554 Bytes | a94ce6551081c762172348612ff75561af6471febd6b9374388f1172e7e2bcef + + +### WinPython 2025-04 release (September 26th, 2025) + +MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|----------------------|----------------------------------------------------------------- +408cccc837ec4f9668ac1a7f41932074 | d9bf153e507f41ead98e2472840678b693a4b31a | 75001c40e8507db4c408f298ce8f49d483efb5ebfa9bdfb50a0509d31bd028f5 | WinPython64-3.13.7.0dot.exe | 16 754 267 Bytes | c9ebe8929f7670864fdefbb4406930fdb0e00c6ab169e45ceb081b2650c210fd +2666a08d437933baaab90fe9f0ec5f2c | 7cb457dee1b21d848778e7cf8c5e8161e11b3d8b | c0f3b1a2809106f4a1a2260ba9d7421fe84b820593c51e818fc5da4f475ff54e | WinPython64-3.13.7.0dot.zip | 27 456 595 Bytes | 3eaf13c90dd6e1f3a503778a2f7c5be673b087ce74a156d36edcb27b7a093383 +8d56b5cdfa66ded570efd2ead505512d | 0b87de3914aab555a51a71ca70c2c4fc7feb3b34 | 5adc17d32782637ed7c2aea62fcd43695dfc0e404022a749ec66511807b34a9c | WinPython64-3.13.7.0slim.7z | 627 262 451 Bytes | b52a28758908ab16f2d6f1dc59c1123d68b867335e2b1cb98e068e5c58fae24d +fb0bdb1be73e2cf6d8005f888fd636f8 | f17b5186cbd57369dd1513aee4d0a65787e18590 | 001d225c86c647f78a92a607e1e1c83cc65f913500a5e20d26bf650cd6122f13 | WinPython64-3.13.7.0slim.exe | 627 456 240 Bytes | ac7d420c9d42337990ea76148bfdc52f6cfa7f07f977fea44669c58771ffa576 +30a9dfc21ac881c03867c500b3567660 | 61dd49eb2b194c3614c41524f4d059a46debc7a5 | 99c15de3c2101deaf04cf20e1152b900246802d0bd1a7503897110abc8fa94d4 | WinPython64-3.13.7.0whl.7z | 651 725 342 Bytes | fa8c7fcaa21603255a7f5ec2e30528e2033a6e25863b471a574dcd4513b7f1d6 +a3d5e95e4a6de5dfe138a3bf879d3b96 | 5b773ec367380bfd2f0c6637c300e5212635711a | 064ffc8d2290e5d9c3596766cfad94496067e48d8bfc8a1393e2d6c3c2b9e022 | WinPython64-3.14.0.1dot.exe | 17 523 393 Bytes | 45fec792af583e468850802a7fcc95e91f9345fa01191d8dde2c9921577c7c5c +2466720ea204b48155291385dbf413ec | 296e9e910a146bf7d4bf88968b422b383a5efdb9 | 7c4da002094b653ea1e82fc6894769295b694531fc7bf9a7d9884e5a89a4330e | WinPython64-3.14.0.1dot.zip | 28 622 712 Bytes | a48542d9a3f897600ed238ad87b680f67562b91bc3a029c0290d3631b0d151b4 +919df0ca14a14d285a96ac0e133c8532 | 021a5461d3a29691de39b6ae8001d28d59cd4770 | d46c3f6a8f759e312e321a209a73948187dbea0ae44b4a81b6d9630899489304 | WinPython64-3.14.0.1free.exe | 18 446 863 Bytes | 98f9de1bc60640e769ddad8bbd7e3f89f33ee9bc869e40d245b016aa106632c6 +186bd847ed3b55d79b375178f09a70e9 | 4ecae7333094a23801b46fa3c109ef14bfdeee9c | 74b5050b77d0e00b3165fd04705fed136740dc20e97b952c53fa8e9d62a42387 | WinPython64-3.14.0.1free.zip | 34 011 568 Bytes | fcfd262bd323d4978239d1c32a1f2a229cdf0edb1f5116317b77b68bb5fdd522 +ebf4c96408ed2d627b35ad0080fd7f21 | 640d8a4889e2f6af85bdd1c9800dded201d892a4 | 095feff28919297fc3a34b6366d662b28312ec8fa0069dbb8061a76d1450c0b3 | pylock.64-3_13_7_0dot.toml | 3 446 Bytes | 9b5e065de49026469a5ea56a2ea7aebd59856cecb080b5826dbd16741a3b83cf +765537b43433ab0064d7d00f4a13fcbe | d30e6e895cef94d3dec5f9ac83724d4234e16a93 | c9e1a6a91884c1219106f8aaeceae55c6555a1699760fbb3ea4b5ca047003fd7 | pylock.64-3_13_7_0slim.toml | 193 844 Bytes | 830f9562a889a356f8a201d87c09705182f6aaa3edb7785b6ebfb607add2a8ab +628312ce324cfaa15c7b6c99c112686d | 5ef1f641ba0933d8206d7f629d8936ea5510b284 | 1ff947977a4212dcd1ee8d0fb4e723ce8df65e1abd3d670d8bc105699f5032ad | pylock.64-3_13_7_0whl_wheels.toml | 187 329 Bytes | ab44cea3a118362d942ea73ae204be9d72f34d66e20e9b51a097ef1c10259fb7 +ebf4c96408ed2d627b35ad0080fd7f21 | 640d8a4889e2f6af85bdd1c9800dded201d892a4 | 095feff28919297fc3a34b6366d662b28312ec8fa0069dbb8061a76d1450c0b3 | pylock.64-3_14_0_1dot.toml | 3 446 Bytes | 9b5e065de49026469a5ea56a2ea7aebd59856cecb080b5826dbd16741a3b83cf +ebf4c96408ed2d627b35ad0080fd7f21 | 640d8a4889e2f6af85bdd1c9800dded201d892a4 | 095feff28919297fc3a34b6366d662b28312ec8fa0069dbb8061a76d1450c0b3 | pylock.64-3_14_0_1free.toml | 3 446 Bytes | 9b5e065de49026469a5ea56a2ea7aebd59856cecb080b5826dbd16741a3b83cf +87bd0e81ef2bd7ac5aee3bbaafe8e561 | 42d9a9208e20e352163b3bccdf4c848f2e589de8 | f2bb627ff670fa0c25995a85b3ecf0c89eafdb5e7f3171889a92bf8734494eb4 | requir.64-3_13_7_0dot.txt | 943 Bytes | 823e5045b2e64f588153523f2306a273b266703ef7b78e5b97f1f865094a100d +1f53e22196a9ecafd62b021c9f321771 | 47dd4e0dc281a340bfda7836c8675cce3ca5444b | 3d7bb0234efceba846fcabb613b4b782208a3163189c2f1e320b248435f14d69 | requir.64-3_13_7_0slim.txt | 53 196 Bytes | e3a17a94b170704c5520b08ef64fe1f5d2a664181f9d39ff077a361e89538e3f +356b62c052e511f8fca3063fdadb3fa9 | 48667d509cbd86ea9cafec6fd0dfc74e442e2129 | ccd3124a8fb25910fdee5d5949e26edb5da24c2610f6efaaadc093824d0f8484 | requir.64-3_13_7_0whl_wheels.txt | 51 400 Bytes | da34898eddbda15f95e1bf71e30ba3fdddab75abf4d9b0aea637caae4d4c65f2 +87bd0e81ef2bd7ac5aee3bbaafe8e561 | 42d9a9208e20e352163b3bccdf4c848f2e589de8 | f2bb627ff670fa0c25995a85b3ecf0c89eafdb5e7f3171889a92bf8734494eb4 | requir.64-3_14_0_1dot.txt | 943 Bytes | 823e5045b2e64f588153523f2306a273b266703ef7b78e5b97f1f865094a100d +87bd0e81ef2bd7ac5aee3bbaafe8e561 | 42d9a9208e20e352163b3bccdf4c848f2e589de8 | f2bb627ff670fa0c25995a85b3ecf0c89eafdb5e7f3171889a92bf8734494eb4 | requir.64-3_14_0_1free.txt | 943 Bytes | 823e5045b2e64f588153523f2306a273b266703ef7b78e5b97f1f865094a100d + + +### WinPython 2025-03 release (June 28th, 2025) + +MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|----------------------|----------------------------------------------------------------- +6e986d2daa963800ad7deaa7b151c895 | ab9600442433d577f044d3c7604ba8193407bcd4 | 8ec81761447c1c9ff143f4faa7b86351787f8c0314ce249aac260a5972b9edf2 | Winpython64-3.12.10.1dot.exe | 23 422 054 Bytes | 58a57d858663de7ed45c5b53835e73102213c881784aab64635ecfb1fe03565d +97fba9cbd845601843fda825155caac1 | 9607229783d66c505894b4b2547af41891c4f669 | 7a1f004aec39615977b2b245423a50115530d16af3418df77977186a555d0a40 | Winpython64-3.12.10.1dot.zip | 38 519 826 Bytes | 543db8fd8cecba4bf6e72596f55d4cacbf2fe49fb9d397b26024088788cdbfba +b1df445794a2826a7355ae29cfc467d8 | 27a2807265bcd574f0338013311227a4c0b29001 | a320f799843712b0c3aa5bcb0fb472cd36dc74615a1436c976c4bf6e8a4ac29f | Winpython64-3.12.10.1slim.7z | 630 560 365 Bytes | 50a4da7c92586357f8730f3bc7174a409edd7ee4aebb9bc49440b2976d89bcca +0cc2ac82631562ec87d1c608eaab9ef1 | ba69116fc9bd2d728ff15a29f588275995fc94db | 62c935050f1bfe3165f2b0c60f8195bdcbee12e83d0a0f360e7a8f7dc60bf40a | Winpython64-3.12.10.1slim.exe | 630 775 751 Bytes | 62df47ca5c8e3d01ce620ff35d267cf118354380ce116f96d84674d189b01290 +2b97ec540e90243038319bbab4346885 | c2d7bb5d981ab38a621a97b95396bcc06f688f61 | 0c526a46fa72ed78cfa45b5332c491fa476bf41f11b2feab90fa7bd48e90724d | Winpython64-3.12.10.1whl.7z | 669 141 991 Bytes | a81cf5421045ba498e7f810c882d0bfd58f5885bc78a34623a2ed85d4529fe90 +12f60270841f87960ff6ce4e5f72d988 | b2f58a6def515cc63be9adf49071630da2edb1e6 | 9f9488eca6aba8fbe75cccde84457b6753cb100a66a4c6c9116107907c4df096 | Winpython64-3.13.5.0dot.exe | 25 108 248 Bytes | 9e649e6667b632bf4b9dd834d985fd1150aaa56e084f564e8d5fde7411b9b7b4 +7aa09c30d44f49abcb6df551fb604dad | 5cf05836d06c0146b7994003568e2b3187dc86c6 | 2727803b134290dcf8b06447b8c122a04ec4e0c592a481c1b6db1b9fa41a09fc | Winpython64-3.13.5.0dot.zip | 39 977 050 Bytes | 16debf3592081a2a7e03931278365b49b28134501d9faee0b252a0f7ebeee2e1 +cbb360471ca828b7753b0ee20e55a3ad | 8bd495def05b5187075e538be1eff957abcff24d | 12c22b0223fe59da9831ba42d44f042826bc8502e15801b9c26ecc3c77dac8aa | Winpython64-3.13.5.0slim.7z | 635 310 049 Bytes | 8e5dd9adf60dd0765743d98c1f13b0e579177a33975fb3df7e30c3290fe01373 +830ffba4935017c13fa2b36d169c08eb | fad23f5af5f5e5584ff21ba02b31c367762e4813 | 495364ef366806a08e649bcaaa32284252f2d317c0360380d467e4b9a01a5428 | Winpython64-3.13.5.0slim.exe | 635 525 645 Bytes | f410fae1fafe18ff07de184d697ed665dc55cf3ce6f073e26bada38110b1e1e1 +549c1e98f751d78e55b655ced2b37dfb | a17413cb2ebe292baa393a9c39b1445569fbac92 | 21422ba5ad05af2306e4fbea0cf95ed0df2df06ed301c6b6ffa6f8f289be61ff | Winpython64-3.13.5.0whl.7z | 670 983 739 Bytes | 5bfe915c4db5edfd7a5da3b34adb28df8eae2714ffb6835ca4349571bb95f7e9 +957f4ce2220f86f9a0dfd544c1059347 | ac6bff0f2a9d70761f51fccd541a3936a81f79ed | a54b5dc8a1d5dba697d52069349a5d3b4fdd1f78090c3bbd73c5a46ddbe4a536 | Winpython64-3.14.0.0freeb3.exe | 27 604 465 Bytes | 11179b50e8fe98fa5b515db33e66aa08ea84dc4ad05f164f010df11784af7e05 +aa72d902262d409f0d0dd66d1b22a1b5 | 6cf322bf92b8093e95bf64955b8caec7fddd9430 | 23230dad12ebac1dd58043782d8a534143711bbada51e6f0d1f827ba08eb987a | Winpython64-3.14.0.0freeb3.zip | 46 626 549 Bytes | a788f5daee00a97832087a90ac2baea1852f7640fa57f46f250552d09d874886 +49a26ef054a744792de6e50586feeb5f | 2c99b9b9ceafa8c634624a1d0fed3f52e716d770 | db37ea4a33b9dfe618d788776547f0657408fb6b75b5429433990d43be4ac712 | pylock.64-3_12_10_1slim.toml | 190 459 Bytes | da71bf8b4465fd4f2f138606cc9a7e2c5003ef2a0b53b2c1cf1cca3ec4863578 +6c9b240066e3aab4e0489cf60e76653e | 1669cfe258a50ac8bdd34776a2a38ef4489e44e1 | 543fb039c8e01f1d8e38473b0624ce75949d68d92b1fbf738aff18341f8a67d1 | pylock.64-3_13_5_0slim.toml | 190 441 Bytes | 26aac2e1c0a87b392aa203a7d51d6879612738f66b3b06b259fef45fff2f1521 +aa96bb795c6908f28692972f8a64ca13 | 40981f9fb851ac0f46cd39fbbbb1eac07d5154ff | 1b22a3b8e157cac0b8958dd46858130ab7d416b5f01d0664f53ca649c5f5f148 | requir.64-3_12_10_1slim.txt | 52 262 Bytes | 40fd3a79f147a9b3cf5ea65b5e0d8a314bc14bde3b242eadf04a447399c8556b +22dc7e0e65f98bcf03b5ce04f6ac8ebd | a2278e6a4289191eab32b9a94ba96311633a81eb | 8e297bc7c44a717be162877e57f41763ed414b2aa8e76c87077141158786705c | requir.64-3_13_5_0slim.txt | 52 262 Bytes | 986685832cb240e3728af2770c25b0dc07666f21c627453ada41cb201b56d8f4 + + +### WinPython 2025-02 release (May 4th, 2025) + +MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|----------------------|----------------------------------------------------------------- +b5a3814f26dade2f6ee9acf983427a8e | b3826baea1606868628128bab5527e3600342fbf | 517eff0673658da3f2da64a28afbd7733fb91807f7d074d3a9e9e6c0eb1dd523 | Winpython64-3.12.10.0dot.7z | 23 076 535 Bytes | e3e4b8b944e79cf20dea5e7691c24485a5b68bb70d34df6edfb181fd499b0335 +6f354778174e04fdb4c4c28c7a543f31 | 5d1bd5bd76dcb0e61df1a268e4ce47f56acbfe6f | b6d196d72ce443ccfbdb5a640f5645a7ade742092fddde65d73755c4eba89a1d | Winpython64-3.12.10.0dot.exe | 23 291 575 Bytes | 785f61ee3821d772bdbff037f86a4229d707c97d97f2508e8cdd03f81c1a8436 +431e37ef366ebe9ae30fa7fb162bb314 | 32965a55a8bc119b96875c542d9a08c6f4ed9b75 | bcb2a87ef210076ff4507a4a644bfb82daa0c2361e7945e5cb7de161450460f6 | Winpython64-3.12.10.0dot.zip | 38 334 544 Bytes | ab0b83f09299291a36298754a445429964f610f507b18e484f6bdf572880acbe +6e7131129ff75dd4e8832f7be131dcc3 | 4d6c5b10d4b3044b9a70597fcd4fd34cd5e2b2a8 | 294c287c4a9918c730d26188e2dc34e97a92431c83515165f04c2ea8d33f0c1d | Winpython64-3.12.10.0slim.7z | 624 548 662 Bytes | f0b952a2fe29837783b69dcb4259369ee5c1d40a3220ad0b4dd82b1668322973 +3cefa92f927471aeef6c1fa3b7911166 | 1699db6b9c44b605c9f2031201bb58a46a260f0e | 3ea3368ca0e9182c03e8e0bc38b65c5398dd4f8aee7ccf5ab38d5a9226af6b9a | Winpython64-3.12.10.0slim.exe | 624 763 614 Bytes | 8584e33e01025ce04d0e429f2c08c7fe94576901aabf030341b21e0837ed5966 +95c7326579dbd4a16cb2f5b56a141673 | f28906c1e3e4ba073f0363a4e35326f9e8090ce1 | 13abddd4cc2702be56b672c868d0d1bc085e80748dc7d7e9315ab4080f157f3b | Winpython64-3.13.3.0dot.7z | 24 839 744 Bytes | 1cb42e1ea66116bc0e7804fb44bb519140d5a5acc9bb63c650ef38dc138ca0bb +bccca9b3e79dfbc13d14837e3ba85c9b | 41c805812b778ccaf3781701264b23e6c9908069 | a6b1882b8eff8a44782bfeec7e5228826ebd38c4234e10ba38a52a85860c41d0 | Winpython64-3.13.3.0dot.exe | 25 054 784 Bytes | eea4a48f72d3ca7e784e86883ef2b46cd48a75fd68321c1088e9ed8c11ad47bd +06a5eb8fa4f7447ad63b7e214b126fd7 | 80ab8340798a318c09ffe07a77a920d5d1eda2b7 | f7ef5a6cfe23b7f39f87c128594fc6c7f73f42f9516a0b828dac0da187af68ec | Winpython64-3.13.3.0dot.zip | 39 870 933 Bytes | a4f9a910f55c5efdbb843874384d5295ff3b3a45d27cab63f74d2f215f9d798c +40e207597ddecd78f60e8474d8dc3c81 | 5e4df5e04424a754b33e4a63f4ae31d0a65eb0a5 | 0ee4eaa17ed86fbcb9e861989e08c85dcf13ca1ef067c52f4fc8b68dd7836c46 | Winpython64-3.13.3.0slim.7z | 629 049 097 Bytes | f275d41a374ff5f3b75decbe65cd52a54c1ac8157edeb62f377dfa2278201ccb +312a8e7fa70b5b58e44f69c1066687a8 | 12e992d1e40fb04c0e7fe367a983dc27ef88b151 | 9abfd2a54ba314dfe573792a573ad31a43e63765f7b77c2002849086a1a47c5e | Winpython64-3.13.3.0slim.exe | 629 265 120 Bytes | 87fc9b086fae8a07b234fcced8b428cd0c3367a9ff068cd3c28b661813c94cab +588e3a1a7ddc461f528270a302a3b667 | a77e443c86c1d21c9a177193e69847efa6346373 | 060046dc83030a639d50396f403a28556ebbd87495bb14045b21118e6cff4c4b | requirement_hash.WinPython64-3.12.10..0slim.txt | 78 133 Bytes | 54d3902407c7c935d83681796585e24d80478f68d22d62ff500d4072ab0385b0 +fb5edb31a3f1e0e7f43eb810f5dd4032 | c6c043e8ec9c7af50eb2d297a91c1b87d3bc7074 | 225500ba0b3aea779b24f7b17bece53250b24380390685bac5ae6c5804f68367 | requirement_hash.WinPython64-3.13.3.0slim.txt | 78 125 Bytes | 1b3d8ff70b049c368ae848d69331faf2ceb19ddc6821ec3549e5511ecac7f393 + + +### WinPython 2025-01 release (March 1st, 2025) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +8aef7e46e862e543d38bed851d0d6505 | fe32d81a13bfd830b5c2820eb9f545ea2dc3302d | 2bcb5bda5d6d27ffce3cccadd772599d534edcbcbca7cb59124e015b3919db68 | Winpython64-3.12.9.0dot.zip | 38 280 444 Bytes | 9f2a468504c56bfb28fec03e47c6526b546098801f21e5137a58dd302838cc6d +b6fdc51ec5aa7cc449e3e31ab4750899 | f623dc942a6e572a078a2cc71ddc0532d6fd7aef | bf240df0e6ba72499dbea42ba4638264bb777f4d59822df0033f421a342c5188 | Winpython64-3.12.9.0dot.7z | 23 093 610 Bytes | db09d389d7ac6a8e2cfb5369ad910ffcf60ee673894f0ad0a94386409f1d582c +39dcdd15299ac9a0aa068290432b6c89 | 80c48b7a91446019c1444b85be1124e8b27b9393 | bf1be605dffa97207ab108d9d8dcab2f51c597fc31bebb5e6067811c93402fd3 | Winpython64-3.12.9.0dot.exe | 23 308 650 Bytes | b4f20a6d870c99628fed5fa070ef4bf9312fabc91be926267ec9b9919d1f2353 +e5c92eca86d5063d7c927b87ca7a979a | eabb5add549cda18e7405c8dbe64f163ab92aa05 | 13a08f3bd516558ebca224bb44cc61d763e679b821a1bf240a700a093e7d47fc | Winpython64-3.12.9.0slim.7z | 616 678 094 Bytes | ddcb6f9118e3e2522e920049cb44d82fdcd8e48bfe5f7a30faf1706742971951 +688a2be695eda8f59d0cc690326d1299 | d9e9ddaea543964d9e9743aec86ee7b342f5480f | 02936d96bb488d111136dce11b08afa189b51f57f59d8d0e7068bea2a5fa67c0 | Winpython64-3.12.9.0slim.exe | 616 892 419 Bytes | bcb6fdccc898a2d70d0f8ba7f80d9a056062fcc5d4cc78845dc979ee46e9292e +6a8d945c058d9fb08b78235bbf8d7ae6 | bcbf848ed72de9b4595ee44faeec15a084408c06 | 0f984ca5dfc195a265a8b547be43891caed9a8770ba8a13b6f87b45990f12704 | Winpython64-3.13.2.0dot.zip | 39 737 933 Bytes | 10008fb4a9193332a1cf5a0d180e503d3860a708a3add9a021c1b23c72ac767a +51617e557c70a78f70153b92c784ea69 | 217e21a9292ede8ddc50f4628a0a031c2320be3b | 069f4a9a32b713f27d5a8f8ffccf2658580eeea7df7120b414b3fd74e7fc099e | Winpython64-3.13.2.0dot.7z | 24 777 973 Bytes | b2e6ae219ea69c5f212534cd8a52e0c2bf0506b272b643be5884a52251da4125 +7f509cb8aba38aa748b35014ef7d8c1c | a37826beb8474d678e6dac8d263c3062055e1050 | ecba739bd41459656b632306f316da73980bae84e62b540f14c03affb8ac2d93 | Winpython64-3.13.2.0dot.exe | 24 993 013 Bytes | 4f51cba5d6533bbe59367f925649da08c008cf40aaa564a1ee9134799311b83e +6486a208002d34492af762d33e51c058 | bd1af3dbd687ed1797ac61a85df74f25efb1578b | dcdcb0608d74333bfb987219150f418b0c9637328703a5c12786ad1e24d5485b | Winpython64-3.13.2.0slim.7z | 621 789 094 Bytes | 112a12e15435b200c22055407553879554e3487bed5118468ee2cd6a3c56fff2 +04b8e6e1dc61e2871b5cf522c76ab471 | 7d66dd128689ae80dbfdb589604572bdf204fc9b | 865c54d31aec95f3138b934a4c0a4ff440ac7a27d82b1a9667c61a80ec4d764f | Winpython64-3.13.2.0slim.exe | 622 004 549 Bytes | fd1ad38146a6323be31c7a35aa39c31dd26b6c3d9328da97b71c6a3dcea622f9 +99a59eda2bf37dfab76bcffcae9cd3a7 | 77df69ec8875a7733c60ce2f0d78ced356d7b4c9 | fc66c242a6fe975dd85c764bd1068ad944440684a2bdc8599c2e5a13b5ca29cd | Winpython64-3.14.0.0dota5b.zip | 40 495 265 Bytes | 8344a7e9a40d15d12fe6e3682b86a72ff512136d4cdc65ebca321cd3283c088e +a0a66a0d00aeefcc185327999fd044c8 | 501888e481f95f824ca7e3160ea117f4f302385e | 92a9a6da1faef872ade0905cf01471831da54ff628b722a4e1d5b4d2a9338f8c | Winpython64-3.14.0.0dota5b.7z | 25 110 864 Bytes | 38275cae601dbbd83fba9591930c893e71b7ea7a8333b2acc0a5a2bde85001bb +91d3e6ebb32677e6ed9674f5e91fc538 | 931baf8ea70e052e4d87d7dc89d8cdb9c3c277e2 | e4933634b52e0b4ae498ddd1302ecf2ccb8b3de95df8af5120f9f298c2b64d3d | Winpython64-3.14.0.0dota5b.exe | 25 325 904 Bytes | fe50cdcb5328813d783cf92b0b2bb16ef6330d7f45d6888fab1f0fcc208c1b16 + + +### WinPython 2024-05 release (January 3rd, 2025) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +3378af265aefee3129171e3165448cfb | cfa99a4fed09996492fd72e2a0d8a441a46050b3 | 2727f61b2702232337a46e39c006f24bd1084395cdf27d076c55d39756c406cc | Winpython64-3.12.8.0dot.exe | 23 442 531 Bytes | efde9241b8922abab035f388e1125069a43bb9d3d48ec5d1667b7d81b4d47061 +139c4bbd020a3082ba164c3e7d32ef59 | a09a8a71047e2b0a5c4f39585249de862c279130 | fabb3f7af4e00fd1b45874d37a63ed2239f62c0935834aa91b83645ba04cd7ba | Winpython64-3.12.8.0dot.7z | 23 227 496 Bytes | 186585ae19af5abf541f88a2a7d6acccc894565280c4e5ca93afdff408160a97 +6e72ee9a3e348c2b3babb90762e85e29 | 65e1f774b02f20c8d386c058a3ed1f797a22d20e | c4c59403370e62169bbeba06f140f0da76b2ee5a5a51ebcfdb3d3ad663b2688a | Winpython64-3.12.8.0slim.exe | 672 113 338 Bytes | 219537f13844cdae7ecc4d00053830e7572a66b46b7f4cdc2c41b6131e6213c9 +07fcf9589f8470a53abfa0320d77ba2a | 3c24c434e4b95d131ef4b6b9703cbaf2a96d41c3 | c872dcb59302af13ce098e6904dff8fe778cd950b8219189d8634bade609bdbb | Winpython64-3.12.8.0slim.7z | 671 899 744 Bytes | 7111b4bf2ee2497296ab0d022606fbcad7d291f8ff10a0cf768dfc44a42423f4 +2d60b1a863fed5cf63d7430d0904a461 | e2a2838cecec6bdeb9d48b998e1b41b362649063 | 338a117a537b9b061314fc38f1a957c34b851d8399edc9705261810da6f2e167 | Winpython64-3.13.1.0dot.exe | 25 157 185 Bytes | 09ec69f4e2e2487b6636cb5f4b242091f9c1b0f9b1c3b2e78b2d4fa0fee0c56d +7699b8f3727548585c17fa806dfc4d14 | 6e5cc08f958f3c92674a18451a3e1d2a6e49894b | 582985c573c900d1120fc0eae54290c607e578eb055679673170f9ef943c13a2 | Winpython64-3.13.1.0dot.7z | 24 942 148 Bytes | da0233c851631a8d12c86e0d6781e092d562874d8a7c1b337ccd1fac7c235efb +db2769c756bc3eb4bd40a941dc667d72 | 5bfcc0492025b606681563c3c73d8b2e5b415313 | 47b9a4ce75efb29d78dda80716d6c35f9a13621efd3a89ef8242a114ef8001a3 | Winpython64-3.13.1.0dot.zip | 39 640 324 Bytes | 1c37c1a2f32e43770f6d105948d7866acd5331c1a19b1c70c5d276604db2a45c +efe121af4dca37595c871fec340a2bda | 44e6d681f5c6ffb7f1e1fef27ecd800cf04d0fff | ed86375c2d6a9de8bddf9889058e299f50ea26432e00e9a74d1d20771e388c55 | Winpython64-3.13.1.0slim.exe | 600 808 320 Bytes | 9f2ed14f54002545e6999321bb981ccb74e280b6786fa289aba7bc09877d71a9 +a24d30ebbf06848279f3a46ed60d42d7 | 982e4c1eb1fcb03432ac4f5eac0d252a9fd65776 | 87fb127b075f0de76f854da6e17bc02819e093cd6b87f7a94d4831c7c490a286 | Winpython64-3.13.1.0slim.7z | 600 593 165 Bytes | 882600d3c84c9734cdace8f1445c60777a91b6678541ee6755b816509ecfb234 + + +### WinPython 2024-04 release (September 14th, 2024) + + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +d3a0d99078b70e13b50b8c693ac23cc5 | 7b1e3f6ea970bddca752bd9ca9088ea30d869f96 | 47d8fb81b0402a61d31cd41f6e4f1a4fe0ee34fc4de781bbc0f23b2835b348f7 | Winpython64-3.11.9.0dot.exe | 25 830 003 Bytes | 353952b8317754ef4370a2502a99db84f4b4ee2df681e09f40e06dd90e72ac36 +1e903de80669230c7f9f571a3e8a6253 | 281f573e62a727bbf916f36cd8c627db20372635 | 5e1c9e8eedac716c4808075aace1863f74f67d4f8c78a77b4cc2e4d13c51a8c6 | Winpython64-3.12.6.0dot.exe | 24 376 540 Bytes | 7f903ca6b2c616596f5e9fa27dac0a9634b5fe23291b7e1ca8a05a99985846ca +2dbb301939001f07a115a2fd9252f721 | ce347726b7150cdd045928ef6b33194f70041d56 | 1f5532eceb35df957cd974d4650b35f8560f4499bcfbfd2d76c520658210ae21 | Winpython64-3.12.6.0slim.exe | 629 924 055 Bytes | d0c66369d569c8dafdfdb190501073b097049f916753feccf0baa4154564de06 +1665f6854db2c662173b0af67a6c5c08 | 655f9435c4e145a056fb265d9ccdb786240b7d0d | dbd0fcf0997295d44068878521bad4063748765fc4921a9ca40df15f6ac050a3 | Winpython64-3.12.6.0.7z | 887 408 957 Bytes | 351910364b96ef945ee26f87ebccdaa463712f5c5bb287c11d506ff526d7bc43 +b1ad8631fa563fc44593022d31404a6d | 7a7e7536299b3c561b856a3215e3e542056ef927 | e5b7fe7970903f0207836299ebac57c2dc6d7a95e6dbd9b7e9a25fd24fd157dd | Winpython64-3.13.0.1dotrc2.exe | 24 642 967 Bytes | e19c8a9273a458ed38d88e749a0d7d265098d50f2c79105128391593e6dcc905 +a4b43f8e4a7ce78ffd3ee865e37e1ec3 | 793650e4f33c2d247bf91dc29b2d3b8fddc95831 | 8e58df9400d4e713f2f51794f3f13d683e366d1f5438499bdd352139268a640c | Winpython64-3.13.0.1freerc2.exe | 33 311 716 Bytes | 07778110c64e4531281597e121084cba1a6f2d25ce2f28537567d6cdfcda6d36 + + +### WinPython 2024-03 release (June 22th, 2024) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +ea2f0d6a1e44c2b08b1706541e0588e1 | 5f04216632e3f5f0ecd58d634efbdde11dc7e3c0 | 0b2bd40fec6c15eb61f113262d9d2dc0a957282dfcb89a017140e06ad932e1d2 | Winpython64-3.12.4.1dot.exe | 24 167 661 Bytes | f66f57d3994f32fc5e2274b79c740fc98560977cd0a698c596ceebf347b76c4f +bf2fb1452b011b1a729c5682f9883e7f | 9549c5d16fbfee8669e7b923d8dbfec32cf6b204 | 08903f02514f59c891e3d56d3ff0d092a7d8571daf66237a5a2c2698068981ec | Winpython64-3.12.4.1.exe | 906 901 445 Bytes | adcc4a1c104e3b9c529c5c4fa86d8edf49caf18aa3fce641210bb752d1a18bfb +b944d4a32b2973f378cee4cab958d621 | a7ed44fb8fd1cda710dadf1f0d181cc78df91c34 | b4cb7a28284eb36ab0abffc9c751e2302e40430af0af930c365816e33c84a528 | Winpython64-3.13.0.0dotb2b.exe | 24 443 923 Bytes | d131db5b89594380c4b653d30fdda1a7d2344c86715d47d52c6bfe1761c39913 +38e87ff395374b09f90bdd4868a996b0 | a0421a5f41ac6e6a69629f4f0d2258f3f219ce23 | 08f9a6f75816045d26e38babbde4a04c7da36b7f07863332548fb586a59bcd4b | Winpython64-3.13.0.0freeb2b.exe | 30 644 666 Bytes | aa877cc35e9e47450991d569277fe203708857be231baaa0149f78ddf7110545 + + ### WinPython 2024-02 release (April 19th, 2024) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 diff --git a/changelogs/pylock.64-3_12_10_1slim.toml b/changelogs/pylock.64-3_12_10_1slim.toml new file mode 100644 index 00000000..83f31af9 --- /dev/null +++ b/changelogs/pylock.64-3_12_10_1slim.toml @@ -0,0 +1,5491 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.2.2" + +[[packages.wheels]] +name = "absl_py-2.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d4/349f7f4bd5ea92dab34f5bb0fe31775ef6c311427a14d5a5b31ecb442341/absl_py-2.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5797bc6abe45f64fd95dc06394ca3f2bedf3b5d895e9da691c9ee3397d70092" + +[[packages]] +name = "adbc-driver-manager" +version = "1.3.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.3.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/65/ef/c628399e3c386215e2f26c7bb0beafb7ee5a6866b3b3e26008d376decc3a/adbc_driver_manager-1.3.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0646996a7bbd31b321a16810f7110e9155b08607c0a83fed97414ad1bd2cac9e" + +[[packages]] +name = "aiofiles" +version = "23.2.1" + +[[packages.wheels]] +name = "aiofiles-23.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c5/19/5af6804c4cc0fed83f47bff6e413a98a36618e7d40185cd36e69737f3b0e/aiofiles-23.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/33/9a/e34e65506e06427b111e19218a99abf627638a9703f4b8bcc3e3021277ed/aiohttp-3.11.18-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "364329f319c499128fd5cd2d1c31c44f234c58f9b96cc57f743d16ec4f3238c8" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.20.0" + +[[packages.wheels]] +name = "aiosqlite-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c4/c93eb22025a2de6b83263dfe3d7df2e19138e345bca6f18dba7394120930/aiosqlite-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6" + +[[packages]] +name = "alabaster" +version = "0.7.16" + +[[packages.wheels]] +name = "alabaster-0.7.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/34/d4e1c02d3bee589efb5dfa17f88ea08bdb3e3eac12bc475462aec52ed223/alabaster-0.7.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92" + +[[packages]] +name = "alembic" +version = "1.15.2" + +[[packages.wheels]] +name = "alembic-1.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/18/d89a443ed1ab9bcda16264716f809c663866d4ca8de218aa78fd50b38ead/alembic-1.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.51.0" + +[[packages.wheels]] +name = "anthropic-0.51.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8c/6e/9637122c5f007103bd5a259f4250bd8f1533dd2473227670fd10a1457b62/anthropic-0.51.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b47d482c9aa1f81b923555cebb687c2730309a20d01be554730c8302e0f62a" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "23.1.0" + +[[packages.wheels]] +name = "argon2_cffi-23.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/6a/e8a041599e78b6b3752da48000b14c8d1e8a04ded09c88c714ba047f34f5/argon2_cffi-23.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "6.1.6" + +[[packages.wheels]] +name = "astropy-6.1.6-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/25/a1c6245c15b8f74e97ee058632739023050a475f979f65056401441f00fd/astropy-6.1.6-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "344c6433b66c770917cb55f9f3754427774d7066bfa7ccf1ca638f45c7c00738" + +[[packages]] +name = "astropy-iers-data" +version = "0.2024.12.23.0.33.24" + +[[packages.wheels]] +name = "astropy_iers_data-0.2024.12.23.0.33.24-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/4d/565740d9ac54640c09d2fdd22ef3583103438fb97305a9cfb66595a4b259/astropy_iers_data-0.2024.12.23.0.33.24-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d3c6b6a5cf4dc6ad91b92b7e0f949e5366234e3c4440302247429fc8294302" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.20.0" + +[[packages.wheels]] +name = "asyncssh-2.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/c5/7a9d42c065f272f74792663194966a68810e851a34c0dd080246bd7308f5/asyncssh-2.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af6888d937c07a4bf31293335a6166b4d87608cdb5957b49547da6ad87ecf174" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.32.0" + +[[packages.wheels]] +name = "azure_core-1.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/83/325bf5e02504dbd8b4faa98197a44cdf8a325ef259b48326a2b6f17f8383/azure_core-1.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eac191a0efb23bfa83fddf321b27b122b4ec847befa3091fa736a5c32c50d7b4" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.21.0" + +[[packages.wheels]] +name = "azure_identity-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/9f/1f9f3ef4f49729ee207a712a5971a9ca747f2ca47d9cbf13cf6953e3478a/azure_identity-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "258ea6325537352440f71b35c3dffe9d240eae4a5126c1b7ce5efd5766bd9fd9" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.3" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/49/6abb616eb3cbab6a7cca303dc02fdf3836de2e0b834bf966a7f5271a34d8/beautifulsoup4-4.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99045d7d3f08f91f0d656bc9b7efbae189426cd913d830294a15eefa0ea4df16" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/7e/a27c3ad3822b6f2e0e00d63d58ff6299a99a5b3aee69fa77cd4b0076b261/black-25.1.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea0213189960bda9cf99be5b8c8ce66bb054af5e9e861249cd23471bd7b0b3ba" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3d/d5/942051b45a9e883b5b6e98c041698b1eb2012d25e5948c58d6bf85b1bb43/Brotli-1.1.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "906bc3a79de8c4ae5b86d3d75a8b77e44404b0f4261714306e3ad248d8ab0951" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.1.31" + +[[packages.wheels]] +name = "certifi-2025.1.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/fc/bce832fd4fd99766c04d1ee0eead6b0ec6486fb100ae5e74c1d91292b982/certifi-2025.1.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/b9/db34c4755a7bd1cb2d1603ac3863f22bcecbd1ba29e5ee841a4bc510b294/cffi-1.17.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6c/4f/c02d5c493967af3eda9c771ad4d2bbc8df6f99ddbeb37ceea6e8716a32bc/charset_normalizer-3.4.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.1.8" + +[[packages.wheels]] +name = "click-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.15.0" + +[[packages.wheels]] +name = "cohere-5.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/87/94694db7fe6df979fbc03286eaabdfa98f1c8fa532960e5afdf965e10960/cohere-5.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22ff867c2a6f2fc2b585360c6072f584f11f275ef6d9242bac24e0fa2df1dfb5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/c8/fadd0b92ffa7b5eb5949bf340a63a4a496a6930a6c37a7ba0f12acb076d6/contourpy-1.3.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c942a01d9163e2e5cfb05cb66110121b8d07ad438a17f9e766317bcb62abf73" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "44.0.0" + +[[packages.wheels]] +name = "cryptography-44.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/9b/443270b9210f13f6ef240eff73fd32e02d381e7103969dc66ce8e89ee901/cryptography-44.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/ad/edce467c24529c536fc9de787546a1c8eca293009383a872b6f638d22eae/cvxopt-1.3.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a92ebfc5df77fea57544f8ad2102bfc45af0e77ac4dfe98ed1b9628e8bba77c3" + +[[packages]] +name = "cvxpy" +version = "1.6.4" + +[[packages.wheels]] +name = "cvxpy-1.6.4-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/1d/2c4070e13763c627f40be341a6760818e1e3a62c497c02e8fa09f21585f0/cvxpy-1.6.4-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "052a09716cfb630a48e911e7c9512015ae651100f64530d8eb973a195e105fa3" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.1" + +[[packages.wheels]] +name = "cython-3.1.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/0e/e1370ed3216e4e164232d1891c2a2932a3874d1a8681f8c3565cafd98579/cython-3.1.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "307f216ed319ea07644f2ef9974406c830f01bc8e677e2147e9bfcdf9e3ca8ad" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/62/1a/f3903197956055032f8cb297342e2dff07e50f83991aebfe5b4c4fcb55e4/cytoolz-1.0.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8f89c48d8e5aec55ffd566a8ec858706d70ed0c6a50228eca30986bfa5b4da8b" + +[[packages]] +name = "dask" +version = "2025.4.1" + +[[packages.wheels]] +name = "dask-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/12/f9effea5fe2bebfdd8b0d9c857f798382afacd57dc1cd0e9ce21e66c1bc2/dask-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aacbb0a9667856fe58385015efd64aca22f0c0b2c5e1b5e633531060303bb4be" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.17.0" + +[[packages.wheels]] +name = "datashader-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/52/755bbab06c4d10f693abb724e82271ccf8adc98e9305a5c559867ee40c98/datashader-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "39421ff999294913e63d41954af955a5dece5d0c55d8fce1426043d70b22d07a" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/c0/f1a383cbb852e4d486e3213cd6d4292f4f789ec32631da15646d3eb13165/deap-1.4.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02b8b664cfa0b6c18ff3e36d0b982fb66f38fb98c5b4292515a305527d57294e" + +[[packages]] +name = "debugpy" +version = "1.8.13" + +[[packages.wheels]] +name = "debugpy-1.8.13-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/f7/0df18a4f530ed3cc06f0060f548efe9e3316102101e311739d906f5650be/debugpy-1.8.13-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63ca7670563c320503fea26ac688988d9d6b9c6a12abc8a8cf2e7dd8e5f6b6ea" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.14" + +[[packages.wheels]] +name = "Deprecated-1.2.14-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/8d/778b7d51b981a96554f29136cd59ca7880bf58094338085bcf2a979a0e6a/Deprecated-1.2.14-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.4.1" + +[[packages.wheels]] +name = "distributed-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/33/b956f0dc74b292ea3d206a45467fde838f005b64123a729898a6390a291a/distributed-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a7834451b04ef059928045eab6ff6d88ad7bcfd48adc99403127d9a6818b5fa" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2" + +[[packages.wheels]] +name = "Django-5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/e0/6a5b5ea350c5bd63fe94b05e4c146c18facb51229d9dee42aa39f9fc2214/Django-5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91ceed4e3a6db5aedced65e3c8f963118ea9ba753fc620831c77074e620e7d83" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/4f/f7ab120ecd827fdff59f14e1de9771335aa7656a29c3259fa7949de1f276/duckdb-1.3.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8754c40dac0f26d9fb0363bbb5df02f7a61ce6a6728d5efc02c3bc925d7c89c3" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "1.1.0" + +[[packages.wheels]] +name = "et_xmlfile-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/c2/3dd434b0108730014f1b96fd286040dc3bcb70066346f7e01ec2ac95865f/et_xmlfile-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.1.0" + +[[packages.wheels]] +name = "faker-37.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d7/a1/8936bc8e79af80ca38288dd93ed44ed1f9d63beb25447a4c59e746e01f8d/faker-37.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc2f730be71cb770e9c715b13374d80dbcee879675121ab51f9683d262ae9a1c" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.115.12" + +[[packages.wheels]] +name = "fastapi-0.115.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/b3/b51f09c2ba432a576fe63758bddc81f78f0c6309d9e5c10d194313bf021e/fastapi-0.115.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d" + +[[packages]] +name = "fastavro" +version = "1.10.0" + +[[packages.wheels]] +name = "fastavro-1.10.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/ce/cfd16546c04ebbca1be80873b533c788cec76f7bfac231bfac6786047572/fastavro-1.10.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "567ff515f2a5d26d9674b31c95477f3e6022ec206124c62169bc2ffaf0889089" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.0" + +[[packages.wheels]] +name = "flask-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/47/93213ee66ef8fae3b93b3e29206f6b251e65c97bd91d8e1c5596ef15af0a/flask-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.57.0" + +[[packages.wheels]] +name = "fonttools-4.57.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/5d/1be5424bb305880e1113631f49a55ea7c7da3a5fe02608ca7c16a03a21da/fonttools-4.57.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "57e30241524879ea10cdf79c737037221f77cc126a8cdc8ff2c94d4a522504b9" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.5.0" + +[[packages.wheels]] +name = "frozenlist-1.5.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b1/56/4e45136ffc6bdbfa68c29ca56ef53783ef4c2fd395f7cbf99a2624aa9aaa/frozenlist-1.5.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8969190d709e7c48ea386db202d708eb94bdb29207a1f269bab1196ce0dcca1f" + +[[packages]] +name = "fsspec" +version = "2025.3.2" + +[[packages.wheels]] +name = "fsspec-2025.3.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/4b/e0cfc1a6f17e990f3e64b7d941ddc4acdc7b19d6edd51abf495f32b1a9e4/fsspec-2025.3.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2daf8dc3d1dfa65b6aa37748d112773a7a08416f6c70d96b264c96476ecaf711" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.38.0" + +[[packages.wheels]] +name = "google_auth-2.38.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9d/47/603554949a37bca5b7f894d51896a9c534b9eab808e2520a748e081669d0/google_auth-2.38.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7dae6694313f434a2727bf2906f27ad259bae090d7aa896590d86feec3d9d4a" + +[[packages]] +name = "google-genai" +version = "1.16.1" + +[[packages.wheels]] +name = "google_genai-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bc/31/30caa8d4ae987e47c5250fb6680588733863fd5b39cacb03ba1977c29bde/google_genai-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ae5d24282244f577ca4f0d95c09f75ab29e556602c9d3531b70161e34cd2a39" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.1.1" + +[[packages.wheels]] +name = "greenlet-3.1.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/43/21/a5d9df1d21514883333fc86584c07c2b49ba7c602e670b174bd73cfc9c7f/greenlet-3.1.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7124e16b4c55d417577c2077be379514321916d5790fa287c9ed6f23bd2ffd01" + +[[packages]] +name = "griffe" +version = "1.7.2" + +[[packages.wheels]] +name = "griffe-1.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/5e/38b408f41064c9fcdbb0ea27c1bd13a1c8657c4846e04dab9f5ea770602c/griffe-1.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1ed9c2e338a75741fc82083fe5a1bc89cb6142efe126194cc313e34ee6af5423" + +[[packages]] +name = "groq" +version = "0.25.0" + +[[packages.wheels]] +name = "groq-0.25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/11/1019a6cfdb2e520cb461cf70d859216be8ca122ddf5ad301fc3b0ee45fd4/groq-0.25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aadc78b40b1809cdb196b1aa8c7f7293108767df1508cafa3e0d5045d9328e7a" + +[[packages]] +name = "guidata" +version = "3.9.0" + +[[packages.wheels]] +name = "guidata-3.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/44afe4b4d634ea77ea7979be78bba4256607f92a6570241925e5b129966d/guidata-3.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96a19dc92850bdb3e463fa06e8c22793e090db42d1e72c6dae9bda1a98b61210" + +[[packages]] +name = "h11" +version = "0.14.0" + +[[packages.wheels]] +name = "h11-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/f7/bb465dcb92ca3521a15cbe1031f6d18234dbf1fb52a6796a00bfaa846ebf/h5py-3.12.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e4d51919110a030913201422fb07987db4338eba5ec8c5a15d6fab8e03d443fc" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.20.2" + +[[packages.wheels]] +name = "holoviews-1.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/67/066a1d984fa259ad7300084a70789579e104afd75fc58a1d44cda9c365d5/holoviews-1.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.7" + +[[packages.wheels]] +name = "httpcore-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/f5/72347bc88306acb359581ac4d52f23c0ef445b57157adedb9aee0cd689d2/httpcore-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.33.0" + +[[packages.wheels]] +name = "huggingface_hub-0.33.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/fb/53587a89fbc00799e4179796f51b3ad713c5de6bb680b2becb6d37c94649/huggingface_hub-0.33.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8668875b40c68f9929150d99727d39e5ebb8a05a98e4191b908dc7ded9074b3" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.2" + +[[packages.wheels]] +name = "hvplot-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/d9/466e22e60dd6b1eb09680d7155c47b58da17eda51bbaf4aad8392a45fe12/hvplot-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9d576a0c2df0f1cf5041545f2a2eddcf962510162876991cae4d1779fad74556" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.130.4" + +[[packages.wheels]] +name = "hypothesis-6.130.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d4/5a0c46cc8d266626cdc8082f07f836fa4a96e8715002de69be46ed406d1d/hypothesis-6.130.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cda4a57115d10ecbefe0a9cc8d69d20a13eb56ecbfe7c24eaee5d368c2b7c477" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.13.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9d/41/721fec82606242a2072ee909086ff918dfad7d0199a9dfd4928df9c72494/imbalanced_learn-0.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb5859f7827cb3babfa5789978c22fe36e56527d9c9768df2d864d98d9b40fe" + +[[packages]] +name = "importlib-metadata" +version = "8.6.1" + +[[packages.wheels]] +name = "importlib_metadata-8.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/9d/0fb148dc4d6fa4a7dd1d8378168d9b4cd8d4560a6fbf6f0121c5fc34eb68/importlib_metadata-8.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.19.2" + +[[packages.wheels]] +name = "ipyleaflet-0.19.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6f/00d60e93a316a178ae04457ceea5bcbb4e2d7e7e469882ac59ec4cccfb8c/ipyleaflet-0.19.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7cc9157848baca2e1793b96e79f8bdb1aa7340521d2b7d8a62aa8bc30eab5278" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.36.0" + +[[packages.wheels]] +name = "ipython-8.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d7/c1c9f371790b3a181e343c4815a361e5a0cc7d90ef6642d64ba5d05de289/ipython-8.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "12b913914d010dcffa2711505ec8be4bf0180742d97f1e5175e51f22086428c1" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.6" + +[[packages.wheels]] +name = "ipywidgets-8.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/b8/62952729573d983d9433faacf62a52ee2e8cf46504418061ad1739967abe/ipywidgets-8.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "446e7630a1d025bdc7635e1169fcc06f2ce33b5bd41c2003edeb4a47c8d4bbb1" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "5.13.2" + +[[packages.wheels]] +name = "isort-5.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.1.0" + +[[packages.wheels]] +name = "jaraco.functools-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/4f/24b319316142c44283d7540e76c7b5a6dbd5db623abd86bb7b3491c21018/jaraco.functools-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.1.3" + +[[packages.wheels]] +name = "jellyfish-1.1.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/3c/5f007820356627332a6cf957ec1233a4845cb9ce9e9026fd62bbd037ceb0/jellyfish-1.1.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8c70b1cc92ee15031db16db0d2ca7d5841744f5f626a35c29c3dd7b4ea7002b" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.9.0" + +[[packages.wheels]] +name = "jiter-0.9.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/9d/742b289016d155f49028fe1bfbeb935c9bf0ffeefdf77daf4a63a42bb72b/jiter-0.9.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "099500d07b43f61d8bd780466d429c45a7b25411b334c60ca875fa775f68ccb0" + +[[packages]] +name = "joblib" +version = "1.4.2" + +[[packages.wheels]] +name = "joblib-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/29/df4b9b42f2be0b623cbd5e2140cafcaa2bef0759a00b7b70104dcfe2fb51/joblib-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6" + +[[packages]] +name = "json5" +version = "0.10.0" + +[[packages.wheels]] +name = "json5-0.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/42/797895b952b682c3dafe23b1834507ee7f02f4d6299b65aaa61425763278/json5-0.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.23.0" + +[[packages.wheels]] +name = "jsonschema-4.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/4a/4f9dbeb84e8850557c02365a0eee0649abe5eb1d84af92a25731c6c0f922/jsonschema-4.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566" + +[[packages]] +name = "jsonschema-specifications" +version = "2024.10.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2024.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/0f/8910b19ac0670a0f80ce1008e5e751c4a57e14d2c4c13a482aa6079fa9d6/jsonschema_specifications-2024.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.7.2" + +[[packages.wheels]] +name = "jupyter_core-5.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/fb/108ecd1fe961941959ad0ee4e12ee7b8b1477247f30b1fdfd83ceaf017f0/jupyter_core-5.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.19.2" + +[[packages.wheels]] +name = "jupyter_leaflet-0.19.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/7c/3ade59500a358b9018a996d00c26eaede79f76ed362b7051bc5038d4a0d4/jupyter_leaflet-0.19.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d57e15e80c08a4360f0cde0b4c490beddc5d422bb0e9bc1c0b4479d3fb725a6" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.15.0" + +[[packages.wheels]] +name = "jupyter_server-2.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a2/89eeaf0bb954a123a909859fa507fa86f96eb61b62dc30667b60dbd5fdaf/jupyter_server-2.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.2" + +[[packages.wheels]] +name = "jupyterlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/ae/fbb93f4990b7648849b19112d8b3e7427bbfc9c5cc8fdc6bf14c0e86d104/jupyterlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "857111a50bed68542bf55dca784522fe728f9f88b4fe69e8c585db5c50900419" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.14" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/7a/f2479ba401e02f7fcbd3fc6af201eac888eaa188574b8e9df19452ab4972/jupyterlab_widgets-3.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54c33e3306b7fca139d165d6190dc6c0627aafa5d14adfc974a4e9a3d26cb703" + +[[packages]] +name = "keras" +version = "3.10.0" + +[[packages.wheels]] +name = "keras-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/e6/4179c461a5fc43e3736880f64dbdc9b1a5349649f0ae32ded927c0e3a227/keras-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c095a6bf90cd50defadf73d4859ff794fad76b775357ef7bd1dbf96388dae7d3" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bd/72/dfff0cc97f2a0776e1c9eb5bef1ddfd45f46246c6533b0191887a427bca5/kiwisolver-1.4.8-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50" + +[[packages]] +name = "langchain" +version = "0.3.25" + +[[packages.wheels]] +name = "langchain-0.3.25-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/5c/5c0be747261e1f8129b875fa3bfea736bc5fe17652f9d5e15ca118571b6f/langchain-0.3.25-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "931f7d2d1eaf182f9f41c5e3272859cfe7f94fc1f7cef6b3e5a46024b4884c21" + +[[packages]] +name = "langchain-core" +version = "0.3.59" + +[[packages.wheels]] +name = "langchain_core-0.3.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/40/aa440a7cd05f1dab5d7c91a1284eb776c3cf3eb59fa18ed39927650cfa38/langchain_core-0.3.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9686baaff43f2c8175535da13faf40e6866769015e93130c3c1e4243e7244d70" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.8" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/a3/3696ff2444658053c01b6b7443e761f28bb71217d82bb89137a978c5f66f/langchain_text_splitters-0.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e75cc0f4ae58dcf07d9f18776400cf8ade27fadd4ff6d264df6278bb302f6f02" + +[[packages]] +name = "langsmith" +version = "0.3.42" + +[[packages.wheels]] +name = "langsmith-0.3.42-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/89/8e/e8a58e0abaae3f3ac4702e9ca35d1fc6159711556b64ffd0e247771a3f12/langsmith-0.3.42-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "18114327f3364385dae4026ebfd57d1c1cb46d8f80931098f0f10abe533475ff" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.44.0" + +[[packages.wheels]] +name = "llvmlite-0.44.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/3b/a9a17366af80127bd09decbe2a54d8974b6d8b274b39bf47fbaedeec6307/llvmlite-0.44.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eae7e2d4ca8f88f89d315b48c6b741dcb925d6a1042da694aa16ab3dd4cbd3a1" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "5.3.0" + +[[packages.wheels]] +name = "lxml-5.3.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/82/ace5a5676051e60355bd8fb945df7b1ba4f4fb8447f2010fb816bfd57724/lxml-5.3.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c1a69e58a6bb2de65902051d57fde951febad631a20a64572677a1052690482f" + +[[packages]] +name = "mako" +version = "1.3.9" + +[[packages.wheels]] +name = "Mako-1.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/83/de0a49e7de540513f53ab5d2e105321dedeb08a8f5850f0208decf4390ec/Mako-1.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95920acccb578427a9aa38e37a186b1e43156c87260d7ba18ca63aa4c7cbd3a1" + +[[packages]] +name = "markdown" +version = "3.7" + +[[packages.wheels]] +name = "Markdown-3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/08/83871f3c50fc983b88547c196d11cf8c3340e37c32d2e9d6152abe2c61f7/Markdown-3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c1/80/a61f99dc3a936413c3ee4e1eecac96c0da5ed07ad56fd975f1a9da5bc630/MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87" + +[[packages]] +name = "matplotlib" +version = "3.10.3" + +[[packages.wheels]] +name = "matplotlib-3.10.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b1/79/0d1c165eac44405a86478082e225fce87874f7198300bbebc55faaf6d28d/matplotlib-3.10.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf37d8c6ef1a48829443e8ba5227b44236d7fcaf7647caa3178a4ff9f7a5be05" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.8.3" + +[[packages.wheels]] +name = "maturin-1.8.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d5/62/f92a130a370dd7aca13c316844b82853647f048cfe1594a81f628ab7101f/maturin-1.8.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "85f2b882d8235c1c1cb0a38d382ccd5b3ba0674d99cb548d49df9342cc688e36" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.9.3" + +[[packages.wheels]] +name = "mcp-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/45/823ad05504bea55cb0feb7470387f151252127ad5c72f8882e8fe6cf5c0e/mcp-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.8.1" + +[[packages.wheels]] +name = "mistralai-1.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/14/e9ef675928768f508dfcedbb0e0ed601784a6911620a2bc25c9065921420/mistralai-1.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "badfc7e6832d894b3e9071d92ad621212b7cccd7df622c6cacdb525162ae338f" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/bc/c4260e4a6c6bf684d0313308de1c860467275221d5e7daf69b3fcddfdd0b/ml_dtypes-0.5.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9626d0bca1fb387d5791ca36bacbba298c5ef554747b7ebeafefb4564fc83566" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.6.0" + +[[packages.wheels]] +name = "more_itertools-10.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/62/0fe302c6d1be1c777cab0616e6302478251dfbf9055ad426f5d0def75c89/more_itertools-10.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6eb054cb4b6db1473f6e15fcc676a08e4732548acd47c708f0e179c2c7c01e89" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.30.0" + +[[packages.wheels]] +name = "msal-1.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/82/8f19334da43b7ef72d995587991a446f140346d76edb96a2c1a2689588e9/msal-1.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "423872177410cb61683566dc3932db7a76f661a5d2f6f52f02a047f101e1c1de" + +[[packages]] +name = "msal-extensions" +version = "1.2.0" + +[[packages.wheels]] +name = "msal_extensions-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/69/314d887a01599669fb330da14e5c6ff5f138609e322812a942a74ef9b765/msal_extensions-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf5ba83a2113fa6dc011a254a72f1c223c88d7dfad74cc30617c4679a417704d" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/80/2708a4641f7d553a63bc934a3eb7214806b5b39d200133ca7f7afb0a53e8/msgpack-1.1.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "115a7af8ee9e8cddc10f87636767857e7e3717b7a2e97379dc2054712693e90f" + +[[packages]] +name = "multidict" +version = "6.4.3" + +[[packages.wheels]] +name = "multidict-6.4.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/24/c8fdff4f924d37225dc0c56a28b1dca10728fc2233065fafeb27b4b125be/multidict-6.4.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "11990b5c757d956cd1db7cb140be50a63216af32cd6506329c2c59d732d802db" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.15.0" + +[[packages.wheels]] +name = "mypy-1.15.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/13/50/da5203fcf6c53044a0b699939f31075c45ae8a4cadf538a9069b165c1050/mypy-1.15.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "171a9ca9a40cd1843abeca0e405bc1940cd9b305eaeea2dda769ba096932bb22" + +[[packages]] +name = "mypy-extensions" +version = "1.0.0" + +[[packages.wheels]] +name = "mypy_extensions-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5c/48/aa1d3e1dd2fa0fece0581d49c6d10717e18fc86dde493114f3894a3371bd/mysql_connector_python-9.2.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b7d149bcc455cf606a4aa604d45267fba16c8abf36056b804f8d16e8f5e753c1" + +[[packages]] +name = "namex" +version = "0.0.8" + +[[packages.wheels]] +name = "namex-0.0.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/59/7854fbfb59f8ae35483ce93493708be5942ebb6328cd85b3a609df629736/namex-0.0.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ddb6c2bb0e753a311b7590f84f6da659dd0c05e65cb89d519d54c0a250c0487" + +[[packages]] +name = "narwhals" +version = "1.36.0" + +[[packages.wheels]] +name = "narwhals-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/bf/fbcbd9f8676e06ed43d644a4ddbf31478a44056487578ce67f191da430cb/narwhals-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3c50dd1d769bc145f57ae17c1f0f0da6c3d397d62cdd0bb167e9b618e95c9d6" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.4.2" + +[[packages.wheels]] +name = "networkx-3.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/54/dd730b32ea14ea797530a4479b2ed46a6fb250f682a9cfb997e968bf0261/networkx-3.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f" + +[[packages]] +name = "nh3" +version = "0.2.18" + +[[packages.wheels]] +name = "nh3-0.2.18-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/8d/53c5b19c4999bdc6ba95f246f4ef35ca83d7d7423e5e38be43ad66544e5d/nh3-0.2.18-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ce0f819d2f1933953fca255db2471ad58184a60508f03e6285e5114b6254844" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.2" + +[[packages.wheels]] +name = "notebook-7.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/16/d3c36a0b1f6dfcf218add8eaf803bf0473ff50681ac4d51acb7ba02bce34/notebook-7.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.61.2" + +[[packages.wheels]] +name = "numba-0.61.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/1d/ddb3e704c5a8fb90142bf9dc195c27db02a08a99f037395503bfbc1d14b3/numba-0.61.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "97cf4f12c728cf77c9c1d7c23707e4d8fb4632b46275f8f3397de33e5877af18" + +[[packages]] +name = "numpy" +version = "2.2.6" + +[[packages.wheels]] +name = "numpy-2.2.6-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/fa/8c9210162ca1b88529ab76b41ba02d433fd54fecaf6feb70ef9f124683f1/numpy-2.2.6-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c1f9540be57940698ed329904db803cf7a402f3fc200bfe599334c9bd84a40b2" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "1.82.0" + +[[packages.wheels]] +name = "openai-1.82.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/4b/a59464ee5f77822a81ee069b4021163a0174940a92685efc3cf8b4c443a3/openai-1.82.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8c40647fea1816516cb3de5189775b30b5f4812777e40b8768f361f232b61b30" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.32.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.32.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/f2/89ea3361a305466bc6460a532188830351220b5f0851a5fa133155c16eca/opentelemetry_api-1.32.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bbd19f14ab9f15f0e85e43e6a958aa4cb1f36870ee62b7fd205783a112012724" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5d/fa/c1dc4f40a83f5df6c16cc3ff89890712dd95caf320641f635ddbe5a11102/optree-0.14.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "98f858daa588ccb70bb554087e87d4192852a11416e5b14f3ee70ae1861b92b0" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.16" + +[[packages.wheels]] +name = "orjson-3.10.16-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/ce/81a27e7b439b807bd393585271364cdddf50dc281fc57c4feef7ccb186a6/orjson-3.10.16-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "86d127efdd3f9bf5f04809b70faca1e6836556ea3cc46e662b44dab3fe71f3d6" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/57/b5/958d4188cb9347e420d3de2d19d8cb1113f691b7a093cdef67f86b598f30/osqp-0.6.7.post3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "468588cfb690becba4d1f460c2a53e75530584e3efcf2caed59f5219032e6888" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "24.2" + +[[packages.wheels]] +name = "packaging-24.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759" + +[[packages]] +name = "pandas" +version = "2.2.3" + +[[packages.wheels]] +name = "pandas-2.2.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/d4/1244ab8edf173a10fd601f7e13b9566c1b525c4f365d6bee918e68381889/pandas-2.2.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.6.3" + +[[packages.wheels]] +name = "panel-1.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/fe/d01b6eae59933d56c345e57cdde5ffe379b7b1f56d192782ab8071249f73/panel-1.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.0" + +[[packages.wheels]] +name = "param-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/370a6636e072a037b52499edd8928942df7f887974fc54444ece5152d26a/param-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.1.0" + +[[packages.wheels]] +name = "pillow-11.1.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/5c/2104299949b9d504baf3f4d35f73dbd14ef31bbd1ddc2c1b66a5b7dfda44/pillow-11.1.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a697cd8ba0383bba3d2d3ada02b34ed268cb548b369943cd349007730c92bddf" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.0.1" + +[[packages.wheels]] +name = "plotly-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/65/ad2bc85f7377f5cfba5d4466d5474423a3fb7f6a97fd807c06f92dd3e721/plotly-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4714db20fea57a435692c548a4eb4fae454f7daddf15f8d8ba7e1045681d7768" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.4" + +[[packages.wheels]] +name = "plotpy-2.7.4-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/26/514cf02030400972fd95d42381e76690640eb3d3ceb14d86c22ebbb302ef/plotpy-2.7.4-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "716fee6b2c2a2156fd267e3941bcef28b3b169e6f95d2ab7f1417ef8c76f8a14" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.31.0" + +[[packages.wheels]] +name = "polars-1.31.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f6/9d9ad9dc4480d66502497e90ce29efc063373e1598f4bd9b6a38af3e08e7/polars-1.31.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3fd874d3432fc932863e8cceff2cff8a12a51976b053f2eb6326a0672134a632" + +[[packages]] +name = "portalocker" +version = "2.7.0" + +[[packages.wheels]] +name = "portalocker-2.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8c/df/d4f711d168524f5aebd7fb30969eaa31e3048cf8979688cde3b08f6e5eb8/portalocker-2.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a07c5b4f3985c3cf4798369631fb7011adb498e2a46d8440efc75a8f29a0f983" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/24/bb/3b1b01da5dd04c77a204c84e538ff11f624e31431cfde7201d9110b092b1/propcache-0.3.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "88c423efef9d7a59dae0614eaed718449c09a5ac79a5f224a8b9664d603f04a3" + +[[packages]] +name = "protobuf" +version = "6.30.2" + +[[packages.wheels]] +name = "protobuf-6.30.2-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/e9/7b9f1b259d509aef2b833c29a1f3c39185e2bf21c9c1be1cd11c22cb2149/protobuf-6.30.2-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.12.0" + +[[packages.wheels]] +name = "psygnal-0.12.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/09/f00841834b7ae543bd232c22e557914d63d0d0430d32980883421d5981bb/psygnal-0.12.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25a9f2db710a6cd2566b3e0e03cf6e04d56276f36ac86b42fa22d81f9a4ac0f2" + +[[packages]] +name = "ptpython" +version = "3.0.29" + +[[packages.wheels]] +name = "ptpython-3.0.29-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/39/c6fd4dd531e067b6a01624126cff0b3ddc6569e22f83e48d8418ffa9e3be/ptpython-3.0.29-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65d75c4871859e4305a020c9b9e204366dceb4d08e0e2bd7b7511bd5e917a402" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "20.0.0" + +[[packages.wheels]] +name = "pyarrow-20.0.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/8e/9adee63dfa3911be2382fb4d92e4b2e7d82610f9d9f668493bebaa2af50f/pyarrow-20.0.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d6a0a37d9c98be08f5ed6a10831d88d52cac7b13f5287f1e0f625a0de8062b" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "2.13.6" + +[[packages.wheels]] +name = "pybind11-2.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/2f/0f24b288e2ce56f51c920137620b4434a38fd80583dbbe24fc2a1656c388/pybind11-2.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "237c41e29157b962835d356b370ededd57594a26d5894a795960f0047cb5caf5" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.10.6" + +[[packages.wheels]] +name = "pydantic-2.10.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/3c/8cc1cc84deffa6e25d2d0c688ebb80635dfdbf1dbea3e30c541c8cf4d860/pydantic-2.10.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427d664bf0b8a2b34ff5dd0f5a18df00591adcee7198fbd71981054cef37b584" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.27.2" + +[[packages.wheels]] +name = "pydantic_core-2.27.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/ea/cd7209a889163b8dcca139fe32b9687dd05249161a3edda62860430457a5/pydantic_core-2.27.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.10.1" + +[[packages.wheels]] +name = "pymongo-4.10.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/8b/5afce891d78159912c43726fab32641e3f9718f14be40f978c148ea8db48/pymongo-4.10.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dcc07b1277e8b4bf4d7382ca133850e323b7ab048b8353af496d050671c7ac52" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/7f/3a47e022a97b017ffb73351a1061e4401bcb5aa4fc0162d04f4e5452e4fc/pyodbc-5.2.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b1f5686b142759c5b2bdbeaa0692622c2ebb1f10780eb3c174b85f5607fbcf55" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/43/97/34605480f06b0ad9611bf58a174eccc6f3673275f3d519cf763391892881/pyogrio-0.10.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a3e09839590d71ff832aa95c4f23fa00a2c63c3de82c1fbd4fb8d265792acfc" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.4.0" + +[[packages.wheels]] +name = "pypdf-5.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/27/d83f8f2a03ca5408dc2cc84b49c0bf3fbf059398a6a2ea7c10acfe28859f/pypdf-5.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db994ab47cadc81057ea1591b90e5b543e2b7ef2d0e31ef41a9bfe763c119dab" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/8b/96bc8c8f3eca4eb7fa3758fde0b755d1df30a19f494376e3ee8de1ef4e79/pyproj-3.7.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0692f806224e8ed82fe4acfa57268ff444fdaf9f330689f24c0d96e59480cce1" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/c5/1174988d52c732d07033cf9a5067142b01d76be7731c6394a64d5c3ef65c/PyQt5_sip-12.17.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "54c31de7706d8a9a8c0fc3ea2c70468aba54b027d4974803f8eace9c22aad41c" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.3.5" + +[[packages.wheels]] +name = "pytest-8.3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/88/9e2aa9d5fde08bfc0fb18ffb1b5307c1ed49c24930b4147e5f48571a7251/pywavelets-1.8.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "810a23a631da596fef7196ddec49b345b1aab13525bb58547eeebe1769edbbc1" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e5/b0627f8bb84e06991bea89ad8153a9e50ace40b2e1195d68e9dff6b03d0f/pywin32-310-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bf5c397c9a9a19a6f62f3fb821fbf36cac08f03770056711f765ec1503972060" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/e5/9714def18c3a411809771a3fbcec70bffa764b9675afb00048a620fca604/pywinpty-2.0.15-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "83a8f20b430bbc5d8957249f875341a60219a4e971580f2ba694fbfb54a45ebc" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/e8/4f648c598b17c3d06e8753d7d13d57542b30d56e6c2dedf9c331ae56312e/PyYAML-6.0.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8" + +[[packages]] +name = "pyzmq" +version = "26.4.0" + +[[packages.wheels]] +name = "pyzmq-26.4.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/0f/55f8c02c182856743b82dde46b2dc3e314edda7f1098c12a8227eeda0833/pyzmq-26.4.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "056a97aab4064f526ecb32f4343917a4022a5d9efb6b9df990ff72e1879e40be" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c1/82/730d0d2c6093c4dc574947eea94e0cddeea836f43823a80fc8b064a82ddf/qdldl-0.1.7.post5-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "13dfc0b225a5c180512488fa51f1771e8fa3c06d7fce9fd3c1d018bc03ba0eec" + +[[packages]] +name = "qrcode" +version = "8.0" + +[[packages.wheels]] +name = "qrcode-8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/ab/df8d889fd01139db68ae9e5cb5c8f0ea016823559a6ecb427582d52b07dc/qrcode-8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fc05f03305ad27a709eb742cf3097fa19e6f6f93bb9e2f039c0979190f6f1b1" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.7.2" + +[[packages.wheels]] +name = "quantecon-0.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/1b/75e44bd482abe2e87dcbead8cfd99b8fa6582fdc0906967c34f64abfdf13/quantecon-0.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d1333ca7bc3046efe3655d9eeeefb299051b00870b8608cb5bc0b88e3bdb8b67" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/25/5ee7ab6841ca668567d0897905eebc79c76f6297b73bf05957be887e9c74/rapidfuzz-3.13.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6e2065f68fb1d0bf65adc289c1bdc45ba7e464e406b319d67bb54441a1b9da9e" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/ec/ad2d7de49a600cdb8dd78434a1aeffe28b9d6fc42eb36afab4a27ad23384/regex-2024.11.6-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b" + +[[packages]] +name = "reportlab" +version = "4.3.1" + +[[packages.wheels]] +name = "reportlab-4.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/6b/42805895ed08a314a01be6110584b5d059328386988ddbc4f8f10014d30e/reportlab-4.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f37dd16652db3ef84363cf744632a28c38bd480d5bf94683466852d7bb678dd" + +[[packages]] +name = "requests" +version = "2.32.3" + +[[packages.wheels]] +name = "requests-2.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/46/b8b5424d1d21f2f2f3f2d468660085318d4f74a8df8289e3dd6ad224d488/rpds_py-0.24.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "998c01b8e71cf051c28f5d6f1187abbdf5cf45fc0efce5da6c06447cba997034" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/e3/49beb08ebccda3c21e871b607c1cb2f258c3fa0d2f609fed0a5ba741b92d/scikit_image-0.25.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd2b8c1de0849964dbc54037f36b4e9420157e67e45a8709a80d727f52c7da2" + +[[packages]] +name = "scikit-learn" +version = "1.6.1" + +[[packages.wheels]] +name = "scikit_learn-1.6.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/62/27/585859e72e117fe861c2079bcba35591a84f801e21bc1ab85bce6ce60305/scikit_learn-1.6.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70b1d7e85b1c96383f872a519b3375f92f14731e279a7b4c6cfd650cf5dffc52" + +[[packages]] +name = "scipy" +version = "1.15.3" + +[[packages.wheels]] +name = "scipy-1.15.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/eb/3bf6ea8ab7f1503dca3a10df2e4b9c3f6b3316df07f6c0ded94b281c7101/scipy-1.15.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52092bc0472cfd17df49ff17e70624345efece4e1a12b23783a1ac59a1b728ed" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/49/1645fa1219493ac94475ab8f48a2520d2fc27f486327f2b0f167440a8188/scs-3.2.7.post2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2995d4099943c3fd754b3e39fe178a9c03dcb9c7d84b40f64ac5eb26d8d6085a" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "79.0.1" + +[[packages.wheels]] +name = "setuptools-79.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/6d/b4752b044bf94cb802d88a888dc7d288baaf77d7910b7dedda74b5ceea0c/setuptools-79.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e147c0549f27767ba362f9da434eab9c5dc0045d5304feb602a0af001089fc51" + +[[packages]] +name = "shapely" +version = "2.1.0" + +[[packages.wheels]] +name = "shapely-2.1.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/bd/9249bd6dda948441e25e4fb14cbbb5205146b0fff12c66b19331f1ff2141/shapely-2.1.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f4f47e631aa4f9ec5576eac546eb3f38802e2f82aeb0552f9612cb9a14ece1db" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.19.3" + +[[packages.wheels]] +name = "simplejson-3.19.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/68/9f0e5df0651cb79ef83cba1378765a00ee8038e6201cc82b8e7178a7778e/simplejson-3.19.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e662336db50ad665777e6548b5076329a94a0c3d4a0472971c588b3ef27de3a" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sklearn-compat" +version = "0.1.3" + +[[packages.wheels]] +name = "sklearn_compat-0.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/a8/ad69cf130fbd017660cdd64abbef3f28135d9e2e15fe3002e03c5be0ca38/sklearn_compat-0.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8aaf8ef711988cbd63f187c5560b5f16b25df663aaa1d2d0e1291341d339f80" + +[[packages]] +name = "skrub" +version = "0.5.3" + +[[packages.wheels]] +name = "skrub-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/cf/5a1e0dabfa3cad1ab9b09e690fede4aa8fdc0c04d9d7ec8aa9338d56e1e4/skrub-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6ba417fa83d1f7e9a69656e0860b061381b9bd19808692a2b5bef8588c72775" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "2.2.0" + +[[packages.wheels]] +name = "snowballstemmer-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/dc/c02e01294f7265e63a7315fe086dd1df7dacb9f840a804da846b96d01b96/snowballstemmer-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.6" + +[[packages.wheels]] +name = "soupsieve-2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9" + +[[packages]] +name = "sphinx" +version = "8.1.3" + +[[packages.wheels]] +name = "sphinx-8.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/26/60/1ddff83a56d33aaf6f10ec8ce84b4c007d9368b21008876fceda7e7381ef/sphinx-8.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.40" + +[[packages.wheels]] +name = "sqlalchemy-2.0.40-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2a/9f/14c511cda174aa1ad9b0e42b64ff5a71db35d08b0d80dc044dae958921e5/sqlalchemy-2.0.40-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2be94d75ee06548d2fc591a3513422b873490efb124048f50556369a834853b0" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "2.2.1" + +[[packages.wheels]] +name = "sse_starlette-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/e0/5b8bd393f27f4a62461c5cf2479c75a2cc2ffa330976f9f00f5f6e4f50eb/sse_starlette-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6410a3d3ba0c89e7675d4c273a301d64649c03a5ef1ca101f10b47f895fd0e99" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/54/949a9e9c07cd6efead79a7f78cc951cb5fa4f9f1fcb25b8520fd2adcdbe0/sspilib-0.2.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40a97ca83e503a175d1dc9461836994e47e8b9bcf56cab81a2c22e27f1993079" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.46.2" + +[[packages.wheels]] +name = "starlette-0.46.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35" + +[[packages]] +name = "statsmodels" +version = "0.14.4" + +[[packages.wheels]] +name = "statsmodels-0.14.4-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/9a/e466a1b887a1441141e52dbcc98152f013d85076576da6eed2357f2016ae/statsmodels-0.14.4-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7f7917a51766b4e074da283c507a25048ad29a18e527207883d73535e0dc6184" + +[[packages]] +name = "streamlit" +version = "1.46.0" + +[[packages.wheels]] +name = "streamlit-1.46.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/be/26/79bbb77bec3d605f7de7a4b45c806b44d112e8c9bce77fb620e03d9f2b88/streamlit-1.46.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f8624acabafcf18611a0fac2635cf181a7ba922b45bd131ae15fc8f80e1a5482" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/64/b16003419a1d7728d0d8c0d56a4c24325e7b10a21a9dd1fc0f7115c02f0a/tiktoken-0.9.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a62d7a25225bafed786a524c1b9f0910a1128f4232615bf3f8257a73aaa3b16" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ef/60/9b9638f081c6f1261e2688bd487625cd1e660d0a85bd469e91d8db969734/tomli-2.2.1-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.1" + +[[packages.wheels]] +name = "tornado-6.5.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/09/6526e32bf1049ee7de3bebba81572673b19a2a8541f795d887e92af1a8bc/tornado-6.5.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/2d/691f741ffd72b6c84438a93749ac57bf1a3f217ac4b0ea4fd0e96119e118/ujson-5.10.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "38665e7d8290188b1e0d57d584eb8110951a9591363316dd41cf8686ab1d0abc" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "14.2" + +[[packages.wheels]] +name = "websockets-14.2-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/7d/32cdb77990b3bdc34a306e0a0f73a1275221e9a66d869f6ff833c95b56ef/websockets-14.2-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "44bba1a956c2c9d268bdcdf234d5e5ff4c9b6dc3e300545cbe99af59dda9dcce" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/74/6a15f68f59bc90032bfcf62eca796a5675be95e1aaf84f7861e1bfcfa8e5/wordcloud-1.9.4-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "360977705d0808a1795fcbe98afb5dc4833cb4bb8e421cbb10e93ef0bce816ff" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5c/cc/8297f9658506b224aa4bd71906447dea6bb0ba629861a758c28f67428b91/wrapt-1.16.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dcdba5c86e368442528f7060039eda390cc4091bfd1dca41e8046af7c910dda8" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.4.0" + +[[packages.wheels]] +name = "xarray-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/1e/96fd96419fec1a37da998a1ca3d558f2cae2f6f3cd5015170371b05a2b6b/xarray-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b27defd082c5cb85d32c695708de6bb05c2838fb7caaf3f952982e602a35b9b8" + +[[packages]] +name = "xlsxwriter" +version = "3.2.3" + +[[packages.wheels]] +name = "XlsxWriter-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/b1/a252d499f2760b314fcf264d2b36fcc4343a1ecdb25492b210cb0db70a68/XlsxWriter-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "593f8296e8a91790c6d0378ab08b064f34a642b3feb787cf6738236bd0a4860d" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/45/0e055320daaabfc169b21ff6174567b2c910c45617b0d79c68d7ab349b02/yarl-1.18.3-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e2ee16578af3b52ac2f334c3b1f92262f47e02cc6193c598502bd46f5cd1477" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.23.0" + +[[packages.wheels]] +name = "zstandard-0.23.0-cp312-cp312-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/37/872d74bd7739639c4553bf94c84af7d54d8211b626b352bc57f0fd8d1e3f/zstandard-0.23.0-cp312-cp312-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64585e1dba664dc67c7cdabd56c1e5685233fbb1fc1966cfba2a340ec0dfff7b" diff --git a/changelogs/pylock.64-3_13_5_0slim.toml b/changelogs/pylock.64-3_13_5_0slim.toml new file mode 100644 index 00000000..c8739b74 --- /dev/null +++ b/changelogs/pylock.64-3_13_5_0slim.toml @@ -0,0 +1,5491 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.2.2" + +[[packages.wheels]] +name = "absl_py-2.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d4/349f7f4bd5ea92dab34f5bb0fe31775ef6c311427a14d5a5b31ecb442341/absl_py-2.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5797bc6abe45f64fd95dc06394ca3f2bedf3b5d895e9da691c9ee3397d70092" + +[[packages]] +name = "adbc-driver-manager" +version = "1.3.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2a/a7/a97c778466e0fca5ebb8566794f07334689a086f3564d1250608bb943494/adbc_driver_manager-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d327006f5993385b3625e3524a851ea7050aa3b1716bddd52c8892ac9c42145" + +[[packages]] +name = "aiofiles" +version = "23.2.1" + +[[packages.wheels]] +name = "aiofiles-23.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c5/19/5af6804c4cc0fed83f47bff6e413a98a36618e7d40185cd36e69737f3b0e/aiofiles-23.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.20.0" + +[[packages.wheels]] +name = "aiosqlite-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c4/c93eb22025a2de6b83263dfe3d7df2e19138e345bca6f18dba7394120930/aiosqlite-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6" + +[[packages]] +name = "alabaster" +version = "0.7.16" + +[[packages.wheels]] +name = "alabaster-0.7.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/34/d4e1c02d3bee589efb5dfa17f88ea08bdb3e3eac12bc475462aec52ed223/alabaster-0.7.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92" + +[[packages]] +name = "alembic" +version = "1.15.2" + +[[packages.wheels]] +name = "alembic-1.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/18/d89a443ed1ab9bcda16264716f809c663866d4ca8de218aa78fd50b38ead/alembic-1.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.51.0" + +[[packages.wheels]] +name = "anthropic-0.51.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8c/6e/9637122c5f007103bd5a259f4250bd8f1533dd2473227670fd10a1457b62/anthropic-0.51.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b47d482c9aa1f81b923555cebb687c2730309a20d01be554730c8302e0f62a" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "23.1.0" + +[[packages.wheels]] +name = "argon2_cffi-23.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/6a/e8a041599e78b6b3752da48000b14c8d1e8a04ded09c88c714ba047f34f5/argon2_cffi-23.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "6.1.6" + +[[packages.wheels]] +name = "astropy-6.1.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/6b/3a25746d94111c8523ac02b810451987128ab61ac05847e24dd1b2093e18/astropy-6.1.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fafc65f47dedcc4a8112bce8b67f215a8076af214be34a2c34abc96d078f2b37" + +[[packages]] +name = "astropy-iers-data" +version = "0.2024.12.23.0.33.24" + +[[packages.wheels]] +name = "astropy_iers_data-0.2024.12.23.0.33.24-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/4d/565740d9ac54640c09d2fdd22ef3583103438fb97305a9cfb66595a4b259/astropy_iers_data-0.2024.12.23.0.33.24-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d3c6b6a5cf4dc6ad91b92b7e0f949e5366234e3c4440302247429fc8294302" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.20.0" + +[[packages.wheels]] +name = "asyncssh-2.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/c5/7a9d42c065f272f74792663194966a68810e851a34c0dd080246bd7308f5/asyncssh-2.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af6888d937c07a4bf31293335a6166b4d87608cdb5957b49547da6ad87ecf174" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.32.0" + +[[packages.wheels]] +name = "azure_core-1.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/83/325bf5e02504dbd8b4faa98197a44cdf8a325ef259b48326a2b6f17f8383/azure_core-1.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eac191a0efb23bfa83fddf321b27b122b4ec847befa3091fa736a5c32c50d7b4" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.21.0" + +[[packages.wheels]] +name = "azure_identity-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/9f/1f9f3ef4f49729ee207a712a5971a9ca747f2ca47d9cbf13cf6953e3478a/azure_identity-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "258ea6325537352440f71b35c3dffe9d240eae4a5126c1b7ce5efd5766bd9fd9" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.3" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/49/6abb616eb3cbab6a7cca303dc02fdf3836de2e0b834bf966a7f5271a34d8/beautifulsoup4-4.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99045d7d3f08f91f0d656bc9b7efbae189426cd913d830294a15eefa0ea4df16" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.1.31" + +[[packages.wheels]] +name = "certifi-2025.1.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/fc/bce832fd4fd99766c04d1ee0eead6b0ec6486fb100ae5e74c1d91292b982/certifi-2025.1.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.1.8" + +[[packages.wheels]] +name = "click-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.15.0" + +[[packages.wheels]] +name = "cohere-5.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/87/94694db7fe6df979fbc03286eaabdfa98f1c8fa532960e5afdf965e10960/cohere-5.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22ff867c2a6f2fc2b585360c6072f584f11f275ef6d9242bac24e0fa2df1dfb5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "44.0.0" + +[[packages.wheels]] +name = "cryptography-44.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/9b/443270b9210f13f6ef240eff73fd32e02d381e7103969dc66ce8e89ee901/cryptography-44.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.6.4" + +[[packages.wheels]] +name = "cvxpy-1.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/a2/625f99661e43bd3fac3926b64cd6e8ab60d75ddd2451d9c6aba17a908c22/cvxpy-1.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1eed0ac8d8c0141abc73535d652f7b133acfbab2149f5d9d6fa348353c90b442" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.1" + +[[packages.wheels]] +name = "cython-3.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/79/5e/c469f7b42e145a06af79a3f7b599454c028a823c6a83adc867ddfd02f941/cython-3.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e000f0533eedf3d6dfbe30bb3c58a054c58f0a7778390342fa577a0dc47adab3" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.4.1" + +[[packages.wheels]] +name = "dask-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/12/f9effea5fe2bebfdd8b0d9c857f798382afacd57dc1cd0e9ce21e66c1bc2/dask-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aacbb0a9667856fe58385015efd64aca22f0c0b2c5e1b5e633531060303bb4be" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.17.0" + +[[packages.wheels]] +name = "datashader-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/52/755bbab06c4d10f693abb724e82271ccf8adc98e9305a5c559867ee40c98/datashader-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "39421ff999294913e63d41954af955a5dece5d0c55d8fce1426043d70b22d07a" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.13" + +[[packages.wheels]] +name = "debugpy-1.8.13-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/63/aa92fb341a78ec40f1c414ec7a7885c2ee17032eee00d12cee0cdc502af4/debugpy-1.8.13-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ce4ed40966c4c1631d0131606b055a5a2f8e430e3f7bf8fd3744b09943e8e8" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.14" + +[[packages.wheels]] +name = "Deprecated-1.2.14-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/8d/778b7d51b981a96554f29136cd59ca7880bf58094338085bcf2a979a0e6a/Deprecated-1.2.14-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.4.1" + +[[packages.wheels]] +name = "distributed-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/33/b956f0dc74b292ea3d206a45467fde838f005b64123a729898a6390a291a/distributed-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a7834451b04ef059928045eab6ff6d88ad7bcfd48adc99403127d9a6818b5fa" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2" + +[[packages.wheels]] +name = "Django-5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/e0/6a5b5ea350c5bd63fe94b05e4c146c18facb51229d9dee42aa39f9fc2214/Django-5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91ceed4e3a6db5aedced65e3c8f963118ea9ba753fc620831c77074e620e7d83" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ab/e9/f83285b0cb3729f24321a038f272490dfb76ca531b7cef832037b7bd077c/duckdb-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "1.1.0" + +[[packages.wheels]] +name = "et_xmlfile-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/c2/3dd434b0108730014f1b96fd286040dc3bcb70066346f7e01ec2ac95865f/et_xmlfile-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.1.0" + +[[packages.wheels]] +name = "faker-37.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d7/a1/8936bc8e79af80ca38288dd93ed44ed1f9d63beb25447a4c59e746e01f8d/faker-37.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc2f730be71cb770e9c715b13374d80dbcee879675121ab51f9683d262ae9a1c" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.115.12" + +[[packages.wheels]] +name = "fastapi-0.115.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/b3/b51f09c2ba432a576fe63758bddc81f78f0c6309d9e5c10d194313bf021e/fastapi-0.115.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d" + +[[packages]] +name = "fastavro" +version = "1.10.0" + +[[packages.wheels]] +name = "fastavro-1.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/2c/43927e22a2d57587b3aa09765098a6d833246b672d34c10c5f135414745a/fastavro-1.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "86baf8c9740ab570d0d4d18517da71626fe9be4d1142bea684db52bd5adb078f" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.0" + +[[packages.wheels]] +name = "flask-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/47/93213ee66ef8fae3b93b3e29206f6b251e65c97bd91d8e1c5596ef15af0a/flask-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.57.0" + +[[packages.wheels]] +name = "fonttools-4.57.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c4/0d/2177b7fdd23d017bcfb702fd41e47d4573766b9114da2fddbac20dcc4957/fonttools-4.57.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d6bc9c23356908db712d282acb3eebd4ae5ec6d8b696aa40342b1d84f8e9e3" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.5.0" + +[[packages.wheels]] +name = "frozenlist-1.5.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/c4/b7db1206a3fea44bf3b838ca61deb6f74424a8a5db1dd53ecb21da669be6/frozenlist-1.5.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "11aabdd62b8b9c4b84081a3c246506d1cddd2dd93ff0ad53ede5defec7886b28" + +[[packages]] +name = "fsspec" +version = "2025.3.2" + +[[packages.wheels]] +name = "fsspec-2025.3.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/4b/e0cfc1a6f17e990f3e64b7d941ddc4acdc7b19d6edd51abf495f32b1a9e4/fsspec-2025.3.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2daf8dc3d1dfa65b6aa37748d112773a7a08416f6c70d96b264c96476ecaf711" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.38.0" + +[[packages.wheels]] +name = "google_auth-2.38.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9d/47/603554949a37bca5b7f894d51896a9c534b9eab808e2520a748e081669d0/google_auth-2.38.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7dae6694313f434a2727bf2906f27ad259bae090d7aa896590d86feec3d9d4a" + +[[packages]] +name = "google-genai" +version = "1.16.1" + +[[packages.wheels]] +name = "google_genai-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bc/31/30caa8d4ae987e47c5250fb6680588733863fd5b39cacb03ba1977c29bde/google_genai-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ae5d24282244f577ca4f0d95c09f75ab29e556602c9d3531b70161e34cd2a39" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.1.1" + +[[packages.wheels]] +name = "greenlet-3.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/1b/54336d876186920e185066d8c3024ad55f21d7cc3683c856127ddb7b13ce/greenlet-3.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b42703b1cf69f2aa1df7d1030b9d77d3e584a70755674d60e710f0af570f3761" + +[[packages]] +name = "griffe" +version = "1.7.2" + +[[packages.wheels]] +name = "griffe-1.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/5e/38b408f41064c9fcdbb0ea27c1bd13a1c8657c4846e04dab9f5ea770602c/griffe-1.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1ed9c2e338a75741fc82083fe5a1bc89cb6142efe126194cc313e34ee6af5423" + +[[packages]] +name = "groq" +version = "0.25.0" + +[[packages.wheels]] +name = "groq-0.25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/11/1019a6cfdb2e520cb461cf70d859216be8ca122ddf5ad301fc3b0ee45fd4/groq-0.25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aadc78b40b1809cdb196b1aa8c7f7293108767df1508cafa3e0d5045d9328e7a" + +[[packages]] +name = "guidata" +version = "3.9.0" + +[[packages.wheels]] +name = "guidata-3.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/44afe4b4d634ea77ea7979be78bba4256607f92a6570241925e5b129966d/guidata-3.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96a19dc92850bdb3e463fa06e8c22793e090db42d1e72c6dae9bda1a98b61210" + +[[packages]] +name = "h11" +version = "0.14.0" + +[[packages.wheels]] +name = "h11-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.20.2" + +[[packages.wheels]] +name = "holoviews-1.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/67/066a1d984fa259ad7300084a70789579e104afd75fc58a1d44cda9c365d5/holoviews-1.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.7" + +[[packages.wheels]] +name = "httpcore-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/f5/72347bc88306acb359581ac4d52f23c0ef445b57157adedb9aee0cd689d2/httpcore-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.33.0" + +[[packages.wheels]] +name = "huggingface_hub-0.33.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/fb/53587a89fbc00799e4179796f51b3ad713c5de6bb680b2becb6d37c94649/huggingface_hub-0.33.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8668875b40c68f9929150d99727d39e5ebb8a05a98e4191b908dc7ded9074b3" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.2" + +[[packages.wheels]] +name = "hvplot-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/d9/466e22e60dd6b1eb09680d7155c47b58da17eda51bbaf4aad8392a45fe12/hvplot-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9d576a0c2df0f1cf5041545f2a2eddcf962510162876991cae4d1779fad74556" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.130.4" + +[[packages.wheels]] +name = "hypothesis-6.130.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d4/5a0c46cc8d266626cdc8082f07f836fa4a96e8715002de69be46ed406d1d/hypothesis-6.130.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cda4a57115d10ecbefe0a9cc8d69d20a13eb56ecbfe7c24eaee5d368c2b7c477" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.13.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9d/41/721fec82606242a2072ee909086ff918dfad7d0199a9dfd4928df9c72494/imbalanced_learn-0.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb5859f7827cb3babfa5789978c22fe36e56527d9c9768df2d864d98d9b40fe" + +[[packages]] +name = "importlib-metadata" +version = "8.6.1" + +[[packages.wheels]] +name = "importlib_metadata-8.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/9d/0fb148dc4d6fa4a7dd1d8378168d9b4cd8d4560a6fbf6f0121c5fc34eb68/importlib_metadata-8.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.19.2" + +[[packages.wheels]] +name = "ipyleaflet-0.19.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6f/00d60e93a316a178ae04457ceea5bcbb4e2d7e7e469882ac59ec4cccfb8c/ipyleaflet-0.19.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7cc9157848baca2e1793b96e79f8bdb1aa7340521d2b7d8a62aa8bc30eab5278" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.36.0" + +[[packages.wheels]] +name = "ipython-8.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d7/c1c9f371790b3a181e343c4815a361e5a0cc7d90ef6642d64ba5d05de289/ipython-8.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "12b913914d010dcffa2711505ec8be4bf0180742d97f1e5175e51f22086428c1" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.6" + +[[packages.wheels]] +name = "ipywidgets-8.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/b8/62952729573d983d9433faacf62a52ee2e8cf46504418061ad1739967abe/ipywidgets-8.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "446e7630a1d025bdc7635e1169fcc06f2ce33b5bd41c2003edeb4a47c8d4bbb1" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "5.13.2" + +[[packages.wheels]] +name = "isort-5.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.1.0" + +[[packages.wheels]] +name = "jaraco.functools-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/4f/24b319316142c44283d7540e76c7b5a6dbd5db623abd86bb7b3491c21018/jaraco.functools-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.1.3" + +[[packages.wheels]] +name = "jellyfish-1.1.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/c2/73b67a1a9444c5804ed4e2e4d55df3e94035efc279fe7426d2dbd2bca5c5/jellyfish-1.1.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2113195a48ce8cb99d2bb2c6d9b119f58025dde1d727101518e7150c093a66da" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.9.0" + +[[packages.wheels]] +name = "jiter-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/1c/0c996fd90639acda75ed7fa698ee5fd7d80243057185dc2f63d4c1c9f6b9/jiter-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8ae3bf27cd1ac5e6e8b7a27487bf3ab5f82318211ec2e1346a5b058756361f7" + +[[packages]] +name = "joblib" +version = "1.4.2" + +[[packages.wheels]] +name = "joblib-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/29/df4b9b42f2be0b623cbd5e2140cafcaa2bef0759a00b7b70104dcfe2fb51/joblib-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6" + +[[packages]] +name = "json5" +version = "0.10.0" + +[[packages.wheels]] +name = "json5-0.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/42/797895b952b682c3dafe23b1834507ee7f02f4d6299b65aaa61425763278/json5-0.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.23.0" + +[[packages.wheels]] +name = "jsonschema-4.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/4a/4f9dbeb84e8850557c02365a0eee0649abe5eb1d84af92a25731c6c0f922/jsonschema-4.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566" + +[[packages]] +name = "jsonschema-specifications" +version = "2024.10.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2024.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/0f/8910b19ac0670a0f80ce1008e5e751c4a57e14d2c4c13a482aa6079fa9d6/jsonschema_specifications-2024.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.7.2" + +[[packages.wheels]] +name = "jupyter_core-5.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/fb/108ecd1fe961941959ad0ee4e12ee7b8b1477247f30b1fdfd83ceaf017f0/jupyter_core-5.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.19.2" + +[[packages.wheels]] +name = "jupyter_leaflet-0.19.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/7c/3ade59500a358b9018a996d00c26eaede79f76ed362b7051bc5038d4a0d4/jupyter_leaflet-0.19.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d57e15e80c08a4360f0cde0b4c490beddc5d422bb0e9bc1c0b4479d3fb725a6" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.15.0" + +[[packages.wheels]] +name = "jupyter_server-2.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a2/89eeaf0bb954a123a909859fa507fa86f96eb61b62dc30667b60dbd5fdaf/jupyter_server-2.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.2" + +[[packages.wheels]] +name = "jupyterlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/ae/fbb93f4990b7648849b19112d8b3e7427bbfc9c5cc8fdc6bf14c0e86d104/jupyterlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "857111a50bed68542bf55dca784522fe728f9f88b4fe69e8c585db5c50900419" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.14" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/7a/f2479ba401e02f7fcbd3fc6af201eac888eaa188574b8e9df19452ab4972/jupyterlab_widgets-3.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54c33e3306b7fca139d165d6190dc6c0627aafa5d14adfc974a4e9a3d26cb703" + +[[packages]] +name = "keras" +version = "3.10.0" + +[[packages.wheels]] +name = "keras-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/e6/4179c461a5fc43e3736880f64dbdc9b1a5349649f0ae32ded927c0e3a227/keras-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c095a6bf90cd50defadf73d4859ff794fad76b775357ef7bd1dbf96388dae7d3" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/dc/c1abe38c37c071d0fc71c9a474fd0b9ede05d42f5a458d584619cfd2371a/kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2" + +[[packages]] +name = "langchain" +version = "0.3.25" + +[[packages.wheels]] +name = "langchain-0.3.25-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/5c/5c0be747261e1f8129b875fa3bfea736bc5fe17652f9d5e15ca118571b6f/langchain-0.3.25-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "931f7d2d1eaf182f9f41c5e3272859cfe7f94fc1f7cef6b3e5a46024b4884c21" + +[[packages]] +name = "langchain-core" +version = "0.3.59" + +[[packages.wheels]] +name = "langchain_core-0.3.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/40/aa440a7cd05f1dab5d7c91a1284eb776c3cf3eb59fa18ed39927650cfa38/langchain_core-0.3.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9686baaff43f2c8175535da13faf40e6866769015e93130c3c1e4243e7244d70" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.8" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/a3/3696ff2444658053c01b6b7443e761f28bb71217d82bb89137a978c5f66f/langchain_text_splitters-0.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e75cc0f4ae58dcf07d9f18776400cf8ade27fadd4ff6d264df6278bb302f6f02" + +[[packages]] +name = "langsmith" +version = "0.3.42" + +[[packages.wheels]] +name = "langsmith-0.3.42-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/89/8e/e8a58e0abaae3f3ac4702e9ca35d1fc6159711556b64ffd0e247771a3f12/langsmith-0.3.42-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "18114327f3364385dae4026ebfd57d1c1cb46d8f80931098f0f10abe533475ff" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.44.0" + +[[packages.wheels]] +name = "llvmlite-0.44.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/81/e66fc86539293282fd9cb7c9417438e897f369e79ffb62e1ae5e5154d4dd/llvmlite-0.44.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "5.3.0" + +[[packages.wheels]] +name = "lxml-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/db/214290d58ad68c587bd5d6af3d34e56830438733d0d0856c0275fde43652/lxml-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "406246b96d552e0503e17a1006fd27edac678b3fcc9f1be71a2f94b4ff61528d" + +[[packages]] +name = "mako" +version = "1.3.9" + +[[packages.wheels]] +name = "Mako-1.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/83/de0a49e7de540513f53ab5d2e105321dedeb08a8f5850f0208decf4390ec/Mako-1.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95920acccb578427a9aa38e37a186b1e43156c87260d7ba18ca63aa4c7cbd3a1" + +[[packages]] +name = "markdown" +version = "3.7" + +[[packages.wheels]] +name = "Markdown-3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/08/83871f3c50fc983b88547c196d11cf8c3340e37c32d2e9d6152abe2c61f7/Markdown-3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.3" + +[[packages.wheels]] +name = "matplotlib-3.10.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b1/0f/eed564407bd4d935ffabf561ed31099ed609e19287409a27b6d336848653/matplotlib-3.10.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "151d89cb8d33cb23345cd12490c76fd5d18a56581a16d950b48c6ff19bb2ab93" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.8.3" + +[[packages.wheels]] +name = "maturin-1.8.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d5/62/f92a130a370dd7aca13c316844b82853647f048cfe1594a81f628ab7101f/maturin-1.8.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "85f2b882d8235c1c1cb0a38d382ccd5b3ba0674d99cb548d49df9342cc688e36" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.9.3" + +[[packages.wheels]] +name = "mcp-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/45/823ad05504bea55cb0feb7470387f151252127ad5c72f8882e8fe6cf5c0e/mcp-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.8.1" + +[[packages.wheels]] +name = "mistralai-1.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/14/e9ef675928768f508dfcedbb0e0ed601784a6911620a2bc25c9065921420/mistralai-1.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "badfc7e6832d894b3e9071d92ad621212b7cccd7df622c6cacdb525162ae338f" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.6.0" + +[[packages.wheels]] +name = "more_itertools-10.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/62/0fe302c6d1be1c777cab0616e6302478251dfbf9055ad426f5d0def75c89/more_itertools-10.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6eb054cb4b6db1473f6e15fcc676a08e4732548acd47c708f0e179c2c7c01e89" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.30.0" + +[[packages.wheels]] +name = "msal-1.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/82/8f19334da43b7ef72d995587991a446f140346d76edb96a2c1a2689588e9/msal-1.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "423872177410cb61683566dc3932db7a76f661a5d2f6f52f02a047f101e1c1de" + +[[packages]] +name = "msal-extensions" +version = "1.2.0" + +[[packages.wheels]] +name = "msal_extensions-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/69/314d887a01599669fb330da14e5c6ff5f138609e322812a942a74ef9b765/msal_extensions-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf5ba83a2113fa6dc011a254a72f1c223c88d7dfad74cc30617c4679a417704d" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.4.3" + +[[packages.wheels]] +name = "multidict-6.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/57/2c0167a1bffa30d9a1383c3dab99d8caae985defc8636934b5668830d2ef/multidict-6.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1c152c49e42277bc9a2f7b78bd5fa10b13e88d1b0328221e7aef89d5c60a99a5" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.15.0" + +[[packages.wheels]] +name = "mypy-1.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/83/3e/57bb447f7bbbfaabf1712d96f9df142624a386d98fb026a761532526057e/mypy-1.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9378e2c00146c44793c98b8d5a61039a048e31f429fb0eb546d93f4b000bedf" + +[[packages]] +name = "mypy-extensions" +version = "1.0.0" + +[[packages.wheels]] +name = "mypy_extensions-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.0.8" + +[[packages.wheels]] +name = "namex-0.0.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/59/7854fbfb59f8ae35483ce93493708be5942ebb6328cd85b3a609df629736/namex-0.0.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ddb6c2bb0e753a311b7590f84f6da659dd0c05e65cb89d519d54c0a250c0487" + +[[packages]] +name = "narwhals" +version = "1.36.0" + +[[packages.wheels]] +name = "narwhals-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/bf/fbcbd9f8676e06ed43d644a4ddbf31478a44056487578ce67f191da430cb/narwhals-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3c50dd1d769bc145f57ae17c1f0f0da6c3d397d62cdd0bb167e9b618e95c9d6" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.4.2" + +[[packages.wheels]] +name = "networkx-3.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/54/dd730b32ea14ea797530a4479b2ed46a6fb250f682a9cfb997e968bf0261/networkx-3.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f" + +[[packages]] +name = "nh3" +version = "0.2.18" + +[[packages.wheels]] +name = "nh3-0.2.18-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/8d/53c5b19c4999bdc6ba95f246f4ef35ca83d7d7423e5e38be43ad66544e5d/nh3-0.2.18-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ce0f819d2f1933953fca255db2471ad58184a60508f03e6285e5114b6254844" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.2" + +[[packages.wheels]] +name = "notebook-7.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/16/d3c36a0b1f6dfcf218add8eaf803bf0473ff50681ac4d51acb7ba02bce34/notebook-7.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.61.2" + +[[packages.wheels]] +name = "numba-0.61.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/a4/6d3a0f2d3989e62a18749e1e9913d5fa4910bbb3e3311a035baea6caf26d/numba-0.61.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7" + +[[packages]] +name = "numpy" +version = "2.2.6" + +[[packages.wheels]] +name = "numpy-2.2.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/3b/d58c12eafcb298d4e6d0d40216866ab15f59e55d148a5658bb3132311fcf/numpy-2.2.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "1.82.0" + +[[packages.wheels]] +name = "openai-1.82.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/4b/a59464ee5f77822a81ee069b4021163a0174940a92685efc3cf8b4c443a3/openai-1.82.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8c40647fea1816516cb3de5189775b30b5f4812777e40b8768f361f232b61b30" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.32.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.32.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/f2/89ea3361a305466bc6460a532188830351220b5f0851a5fa133155c16eca/opentelemetry_api-1.32.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bbd19f14ab9f15f0e85e43e6a958aa4cb1f36870ee62b7fd205783a112012724" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.16" + +[[packages.wheels]] +name = "orjson-3.10.16-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/81/9c/b66ce9245ff319df2c3278acd351a3f6145ef34b4a2d7f4b0f739368370f/orjson-3.10.16-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fe0a145e96d51971407cb8ba947e63ead2aa915db59d6631a355f5f2150b56b7" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "24.2" + +[[packages.wheels]] +name = "packaging-24.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759" + +[[packages]] +name = "pandas" +version = "2.2.3" + +[[packages.wheels]] +name = "pandas-2.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3b/bc/4b18e2b8c002572c5a441a64826252ce5da2aa738855747247a971988043/pandas-2.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.6.3" + +[[packages.wheels]] +name = "panel-1.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/fe/d01b6eae59933d56c345e57cdde5ffe379b7b1f56d192782ab8071249f73/panel-1.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.0" + +[[packages.wheels]] +name = "param-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/370a6636e072a037b52499edd8928942df7f887974fc54444ece5152d26a/param-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.1.0" + +[[packages.wheels]] +name = "pillow-11.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3b/ad/285c556747d34c399f332ba7c1a595ba245796ef3e22eae190f5364bb62b/pillow-11.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "593c5fd6be85da83656b93ffcccc2312d2d149d251e98588b14fbc288fd8909c" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.0.1" + +[[packages.wheels]] +name = "plotly-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/65/ad2bc85f7377f5cfba5d4466d5474423a3fb7f6a97fd807c06f92dd3e721/plotly-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4714db20fea57a435692c548a4eb4fae454f7daddf15f8d8ba7e1045681d7768" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.4" + +[[packages.wheels]] +name = "plotpy-2.7.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/98/9bc8f5a00dd45b53c37292c08ebcf9f94e895838ab2ad295d1c0eec88332/plotpy-2.7.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.31.0" + +[[packages.wheels]] +name = "polars-1.31.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f6/9d9ad9dc4480d66502497e90ce29efc063373e1598f4bd9b6a38af3e08e7/polars-1.31.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3fd874d3432fc932863e8cceff2cff8a12a51976b053f2eb6326a0672134a632" + +[[packages]] +name = "portalocker" +version = "2.7.0" + +[[packages.wheels]] +name = "portalocker-2.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8c/df/d4f711d168524f5aebd7fb30969eaa31e3048cf8979688cde3b08f6e5eb8/portalocker-2.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a07c5b4f3985c3cf4798369631fb7011adb498e2a46d8440efc75a8f29a0f983" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.30.2" + +[[packages.wheels]] +name = "protobuf-6.30.2-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/e9/7b9f1b259d509aef2b833c29a1f3c39185e2bf21c9c1be1cd11c22cb2149/protobuf-6.30.2-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.12.0" + +[[packages.wheels]] +name = "psygnal-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/ae/a3d6815db583b6d05878b3647ea0e2aa21ce6941d03c9d2c6caad1afbcf6/psygnal-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7" + +[[packages]] +name = "ptpython" +version = "3.0.29" + +[[packages.wheels]] +name = "ptpython-3.0.29-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/39/c6fd4dd531e067b6a01624126cff0b3ddc6569e22f83e48d8418ffa9e3be/ptpython-3.0.29-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65d75c4871859e4305a020c9b9e204366dceb4d08e0e2bd7b7511bd5e917a402" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "20.0.0" + +[[packages.wheels]] +name = "pyarrow-20.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/07/290f4abf9ca702c5df7b47739c1b2c83588641ddfa2cc75e34a301d42e55/pyarrow-20.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30b3051b7975801c1e1d387e17c588d8ab05ced9b1e14eec57915f79869b5031" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "2.13.6" + +[[packages.wheels]] +name = "pybind11-2.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/2f/0f24b288e2ce56f51c920137620b4434a38fd80583dbbe24fc2a1656c388/pybind11-2.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "237c41e29157b962835d356b370ededd57594a26d5894a795960f0047cb5caf5" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.10.6" + +[[packages.wheels]] +name = "pydantic-2.10.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/3c/8cc1cc84deffa6e25d2d0c688ebb80635dfdbf1dbea3e30c541c8cf4d860/pydantic-2.10.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427d664bf0b8a2b34ff5dd0f5a18df00591adcee7198fbd71981054cef37b584" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.27.2" + +[[packages.wheels]] +name = "pydantic_core-2.27.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/47/82b5e846e01b26ac6f1893d3c5f9f3a2eb6ba79be26eef0b759b4fe72946/pydantic_core-2.27.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "953101387ecf2f5652883208769a79e48db18c6df442568a0b5ccd8c2723abee" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.10.1" + +[[packages.wheels]] +name = "pymongo-4.10.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/2a/7c24a6144eaa06d18ed52822ea2b0f119fd9267cd1abbb75dae4d89a3803/pymongo-4.10.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.4.0" + +[[packages.wheels]] +name = "pypdf-5.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/27/d83f8f2a03ca5408dc2cc84b49c0bf3fbf059398a6a2ea7c10acfe28859f/pypdf-5.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db994ab47cadc81057ea1591b90e5b543e2b7ef2d0e31ef41a9bfe763c119dab" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.3.5" + +[[packages.wheels]] +name = "pytest-8.3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "26.4.0" + +[[packages.wheels]] +name = "pyzmq-26.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c6/6c/f289c1789d7bb6e5a3b3bef7b2a55089b8561d17132be7d960d3ff33b14e/pyzmq-26.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.0" + +[[packages.wheels]] +name = "qrcode-8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/ab/df8d889fd01139db68ae9e5cb5c8f0ea016823559a6ecb427582d52b07dc/qrcode-8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fc05f03305ad27a709eb742cf3097fa19e6f6f93bb9e2f039c0979190f6f1b1" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.7.2" + +[[packages.wheels]] +name = "quantecon-0.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/1b/75e44bd482abe2e87dcbead8cfd99b8fa6582fdc0906967c34f64abfdf13/quantecon-0.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d1333ca7bc3046efe3655d9eeeefb299051b00870b8608cb5bc0b88e3bdb8b67" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" + +[[packages]] +name = "reportlab" +version = "4.3.1" + +[[packages.wheels]] +name = "reportlab-4.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/6b/42805895ed08a314a01be6110584b5d059328386988ddbc4f8f10014d30e/reportlab-4.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f37dd16652db3ef84363cf744632a28c38bd480d5bf94683466852d7bb678dd" + +[[packages]] +name = "requests" +version = "2.32.3" + +[[packages.wheels]] +name = "requests-2.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/12/09e048d1814195e01f354155fb772fb0854bd3450b5f5a82224b3a319f0e/rpds_py-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.6.1" + +[[packages.wheels]] +name = "scikit_learn-1.6.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/b0/ca92b90859070a1487827dbc672f998da95ce83edce1270fc23f96f1f61a/scikit_learn-1.6.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7a1c43c8ec9fde528d664d947dc4c0789be4077a3647f232869f41d9bf50e0fb" + +[[packages]] +name = "scipy" +version = "1.15.3" + +[[packages.wheels]] +name = "scipy-1.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/2e/892ad2862ba54f084ffe8cc4a22667eaf9c2bcec6d2bff1d15713c6c0703/scipy-1.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b90ab29d0c37ec9bf55424c064312930ca5f4bde15ee8619ee44e69319aab163" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/f9/840ef19a298ef7099f4a692772001f2f552b0917a3fb230f872a1c40ba11/scs-3.2.7.post2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "79.0.1" + +[[packages.wheels]] +name = "setuptools-79.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/6d/b4752b044bf94cb802d88a888dc7d288baaf77d7910b7dedda74b5ceea0c/setuptools-79.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e147c0549f27767ba362f9da434eab9c5dc0045d5304feb602a0af001089fc51" + +[[packages]] +name = "shapely" +version = "2.1.0" + +[[packages.wheels]] +name = "shapely-2.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/f0/9f8cdf2258d7aed742459cea51c70d184de92f5d2d6f5f7f1ded90a18c31/shapely-2.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1dc8d4364483a14aba4c844b7bd16a6fa3728887e2c33dfa1afa34a3cf4d08a5" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.19.3" + +[[packages.wheels]] +name = "simplejson-3.19.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/58/b06226e6b0612f2b1fa13d5273551da259f894566b1eef32249ddfdcce44/simplejson-3.19.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sklearn-compat" +version = "0.1.3" + +[[packages.wheels]] +name = "sklearn_compat-0.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/a8/ad69cf130fbd017660cdd64abbef3f28135d9e2e15fe3002e03c5be0ca38/sklearn_compat-0.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8aaf8ef711988cbd63f187c5560b5f16b25df663aaa1d2d0e1291341d339f80" + +[[packages]] +name = "skrub" +version = "0.5.3" + +[[packages.wheels]] +name = "skrub-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/cf/5a1e0dabfa3cad1ab9b09e690fede4aa8fdc0c04d9d7ec8aa9338d56e1e4/skrub-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6ba417fa83d1f7e9a69656e0860b061381b9bd19808692a2b5bef8588c72775" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "2.2.0" + +[[packages.wheels]] +name = "snowballstemmer-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/dc/c02e01294f7265e63a7315fe086dd1df7dacb9f840a804da846b96d01b96/snowballstemmer-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.6" + +[[packages.wheels]] +name = "soupsieve-2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9" + +[[packages]] +name = "sphinx" +version = "8.1.3" + +[[packages.wheels]] +name = "sphinx-8.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/26/60/1ddff83a56d33aaf6f10ec8ce84b4c007d9368b21008876fceda7e7381ef/sphinx-8.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.40" + +[[packages.wheels]] +name = "sqlalchemy-2.0.40-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/cb/f38c61f7f2fd4d10494c1c135ff6a6ddb63508d0b47bccccd93670637309/sqlalchemy-2.0.40-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "641ee2e0834812d657862f3a7de95e0048bdcb6c55496f39c6fa3d435f6ac6ad" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "2.2.1" + +[[packages.wheels]] +name = "sse_starlette-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/e0/5b8bd393f27f4a62461c5cf2479c75a2cc2ffa330976f9f00f5f6e4f50eb/sse_starlette-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6410a3d3ba0c89e7675d4c273a301d64649c03a5ef1ca101f10b47f895fd0e99" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.46.2" + +[[packages.wheels]] +name = "starlette-0.46.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35" + +[[packages]] +name = "statsmodels" +version = "0.14.4" + +[[packages.wheels]] +name = "statsmodels-0.14.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1d/eb/cb8b01f5edf8f135eb3d0553d159db113a35b2948d0e51eeb735e7ae09ea/statsmodels-0.14.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0" + +[[packages]] +name = "streamlit" +version = "1.46.0" + +[[packages.wheels]] +name = "streamlit-1.46.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/be/26/79bbb77bec3d605f7de7a4b45c806b44d112e8c9bce77fb620e03d9f2b88/streamlit-1.46.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f8624acabafcf18611a0fac2635cf181a7ba922b45bd131ae15fc8f80e1a5482" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.1" + +[[packages.wheels]] +name = "tornado-6.5.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/09/6526e32bf1049ee7de3bebba81572673b19a2a8541f795d887e92af1a8bc/tornado-6.5.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "14.2" + +[[packages.wheels]] +name = "websockets-14.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/13/8b7fc4cb551b9cfd9890f0fd66e53c18a06240319915533b033a56a3d520/websockets-14.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/21/abdedb4cdf6ff41ebf01a74087740a709e2edb146490e4d9beea054b0b7a/wrapt-1.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.4.0" + +[[packages.wheels]] +name = "xarray-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/1e/96fd96419fec1a37da998a1ca3d558f2cae2f6f3cd5015170371b05a2b6b/xarray-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b27defd082c5cb85d32c695708de6bb05c2838fb7caaf3f952982e602a35b9b8" + +[[packages]] +name = "xlsxwriter" +version = "3.2.3" + +[[packages.wheels]] +name = "XlsxWriter-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/b1/a252d499f2760b314fcf264d2b36fcc4343a1ecdb25492b210cb0db70a68/XlsxWriter-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "593f8296e8a91790c6d0378ab08b064f34a642b3feb787cf6738236bd0a4860d" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.23.0" + +[[packages.wheels]] +name = "zstandard-0.23.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a2/bf/c6aaba098e2d04781e8f4f7c0ba3c7aa73d00e4c436bcc0cf059a66691d1/zstandard-0.23.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b" diff --git a/changelogs/requir.64-3_12_10_1slim.txt b/changelogs/requir.64-3_12_10_1slim.txt new file mode 100644 index 00000000..40ca03cb --- /dev/null +++ b/changelogs/requir.64-3_12_10_1slim.txt @@ -0,0 +1,998 @@ +absl-py==2.2.2 \ + --hash=sha256:e5797bc6abe45f64fd95dc06394ca3f2bedf3b5d895e9da691c9ee3397d70092 +adbc-driver-manager==1.3.0 \ + --hash=sha256:0646996a7bbd31b321a16810f7110e9155b08607c0a83fed97414ad1bd2cac9e +aiofiles==23.2.1 \ + --hash=sha256:19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:364329f319c499128fd5cd2d1c31c44f234c58f9b96cc57f743d16ec4f3238c8 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.20.0 \ + --hash=sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6 +alabaster==0.7.16 \ + --hash=sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92 +alembic==1.15.2 \ + --hash=sha256:2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.51.0 \ + --hash=sha256:b8b47d482c9aa1f81b923555cebb687c2730309a20d01be554730c8302e0f62a +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==23.1.0 \ + --hash=sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==6.1.6 \ + --hash=sha256:344c6433b66c770917cb55f9f3754427774d7066bfa7ccf1ca638f45c7c00738 +astropy-iers-data==0.2024.12.23.0.33.24 \ + --hash=sha256:40d3c6b6a5cf4dc6ad91b92b7e0f949e5366234e3c4440302247429fc8294302 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.20.0 \ + --hash=sha256:af6888d937c07a4bf31293335a6166b4d87608cdb5957b49547da6ad87ecf174 +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.32.0 \ + --hash=sha256:eac191a0efb23bfa83fddf321b27b122b4ec847befa3091fa736a5c32c50d7b4 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.21.0 \ + --hash=sha256:258ea6325537352440f71b35c3dffe9d240eae4a5126c1b7ce5efd5766bd9fd9 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.3 \ + --hash=sha256:99045d7d3f08f91f0d656bc9b7efbae189426cd913d830294a15eefa0ea4df16 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:ea0213189960bda9cf99be5b8c8ce66bb054af5e9e861249cd23471bd7b0b3ba +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:906bc3a79de8c4ae5b86d3d75a8b77e44404b0f4261714306e3ad248d8ab0951 +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.1.31 \ + --hash=sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe +cffi==1.17.1 \ + --hash=sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.1.8 \ + --hash=sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2 +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.15.0 \ + --hash=sha256:22ff867c2a6f2fc2b585360c6072f584f11f275ef6d9242bac24e0fa2df1dfb5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:8c942a01d9163e2e5cfb05cb66110121b8d07ad438a17f9e766317bcb62abf73 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==44.0.0 \ + --hash=sha256:708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede +cvxopt==1.3.2 \ + --hash=sha256:a92ebfc5df77fea57544f8ad2102bfc45af0e77ac4dfe98ed1b9628e8bba77c3 +cvxpy==1.6.4 \ + --hash=sha256:052a09716cfb630a48e911e7c9512015ae651100f64530d8eb973a195e105fa3 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.1 \ + --hash=sha256:307f216ed319ea07644f2ef9974406c830f01bc8e677e2147e9bfcdf9e3ca8ad +cytoolz==1.0.1 \ + --hash=sha256:8f89c48d8e5aec55ffd566a8ec858706d70ed0c6a50228eca30986bfa5b4da8b +dask==2025.4.1 \ + --hash=sha256:aacbb0a9667856fe58385015efd64aca22f0c0b2c5e1b5e633531060303bb4be +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.17.0 \ + --hash=sha256:39421ff999294913e63d41954af955a5dece5d0c55d8fce1426043d70b22d07a +deap==1.4.2 \ + --hash=sha256:02b8b664cfa0b6c18ff3e36d0b982fb66f38fb98c5b4292515a305527d57294e +debugpy==1.8.13 \ + --hash=sha256:63ca7670563c320503fea26ac688988d9d6b9c6a12abc8a8cf2e7dd8e5f6b6ea +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.14 \ + --hash=sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.4.1 \ + --hash=sha256:3a7834451b04ef059928045eab6ff6d88ad7bcfd48adc99403127d9a6818b5fa +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2 \ + --hash=sha256:91ceed4e3a6db5aedced65e3c8f963118ea9ba753fc620831c77074e620e7d83 +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:8754c40dac0f26d9fb0363bbb5df02f7a61ce6a6728d5efc02c3bc925d7c89c3 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==1.1.0 \ + --hash=sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.1.0 \ + --hash=sha256:dc2f730be71cb770e9c715b13374d80dbcee879675121ab51f9683d262ae9a1c +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.115.12 \ + --hash=sha256:e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d +fastavro==1.10.0 \ + --hash=sha256:567ff515f2a5d26d9674b31c95477f3e6022ec206124c62169bc2ffaf0889089 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.0 \ + --hash=sha256:d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.57.0 \ + --hash=sha256:57e30241524879ea10cdf79c737037221f77cc126a8cdc8ff2c94d4a522504b9 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.5.0 \ + --hash=sha256:8969190d709e7c48ea386db202d708eb94bdb29207a1f269bab1196ce0dcca1f +fsspec==2025.3.2 \ + --hash=sha256:2daf8dc3d1dfa65b6aa37748d112773a7a08416f6c70d96b264c96476ecaf711 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.38.0 \ + --hash=sha256:e7dae6694313f434a2727bf2906f27ad259bae090d7aa896590d86feec3d9d4a +google-genai==1.16.1 \ + --hash=sha256:6ae5d24282244f577ca4f0d95c09f75ab29e556602c9d3531b70161e34cd2a39 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.1.1 \ + --hash=sha256:7124e16b4c55d417577c2077be379514321916d5790fa287c9ed6f23bd2ffd01 +griffe==1.7.2 \ + --hash=sha256:1ed9c2e338a75741fc82083fe5a1bc89cb6142efe126194cc313e34ee6af5423 +groq==0.25.0 \ + --hash=sha256:aadc78b40b1809cdb196b1aa8c7f7293108767df1508cafa3e0d5045d9328e7a +guidata==3.9.0 \ + --hash=sha256:96a19dc92850bdb3e463fa06e8c22793e090db42d1e72c6dae9bda1a98b61210 +h11==0.14.0 \ + --hash=sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:e4d51919110a030913201422fb07987db4338eba5ec8c5a15d6fab8e03d443fc +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.20.2 \ + --hash=sha256:1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.7 \ + --hash=sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.33.0 \ + --hash=sha256:e8668875b40c68f9929150d99727d39e5ebb8a05a98e4191b908dc7ded9074b3 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.2 \ + --hash=sha256:9d576a0c2df0f1cf5041545f2a2eddcf962510162876991cae4d1779fad74556 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.130.4 \ + --hash=sha256:cda4a57115d10ecbefe0a9cc8d69d20a13eb56ecbfe7c24eaee5d368c2b7c477 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.13.0 \ + --hash=sha256:7eb5859f7827cb3babfa5789978c22fe36e56527d9c9768df2d864d98d9b40fe +importlib-metadata==8.6.1 \ + --hash=sha256:02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.19.2 \ + --hash=sha256:7cc9157848baca2e1793b96e79f8bdb1aa7340521d2b7d8a62aa8bc30eab5278 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.36.0 \ + --hash=sha256:12b913914d010dcffa2711505ec8be4bf0180742d97f1e5175e51f22086428c1 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.6 \ + --hash=sha256:446e7630a1d025bdc7635e1169fcc06f2ce33b5bd41c2003edeb4a47c8d4bbb1 +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==5.13.2 \ + --hash=sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.1.0 \ + --hash=sha256:ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.1.3 \ + --hash=sha256:c8c70b1cc92ee15031db16db0d2ca7d5841744f5f626a35c29c3dd7b4ea7002b +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.9.0 \ + --hash=sha256:099500d07b43f61d8bd780466d429c45a7b25411b334c60ca875fa775f68ccb0 +joblib==1.4.2 \ + --hash=sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6 +json5==0.10.0 \ + --hash=sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.23.0 \ + --hash=sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566 +jsonschema-specifications==2024.10.1 \ + --hash=sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.7.2 \ + --hash=sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.19.2 \ + --hash=sha256:0d57e15e80c08a4360f0cde0b4c490beddc5d422bb0e9bc1c0b4479d3fb725a6 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.15.0 \ + --hash=sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3 +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.2 \ + --hash=sha256:857111a50bed68542bf55dca784522fe728f9f88b4fe69e8c585db5c50900419 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.14 \ + --hash=sha256:54c33e3306b7fca139d165d6190dc6c0627aafa5d14adfc974a4e9a3d26cb703 +keras==3.10.0 \ + --hash=sha256:c095a6bf90cd50defadf73d4859ff794fad76b775357ef7bd1dbf96388dae7d3 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50 +langchain==0.3.25 \ + --hash=sha256:931f7d2d1eaf182f9f41c5e3272859cfe7f94fc1f7cef6b3e5a46024b4884c21 +langchain-core==0.3.59 \ + --hash=sha256:9686baaff43f2c8175535da13faf40e6866769015e93130c3c1e4243e7244d70 +langchain-text-splitters==0.3.8 \ + --hash=sha256:e75cc0f4ae58dcf07d9f18776400cf8ade27fadd4ff6d264df6278bb302f6f02 +langsmith==0.3.42 \ + --hash=sha256:18114327f3364385dae4026ebfd57d1c1cb46d8f80931098f0f10abe533475ff +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.44.0 \ + --hash=sha256:eae7e2d4ca8f88f89d315b48c6b741dcb925d6a1042da694aa16ab3dd4cbd3a1 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==5.3.0 \ + --hash=sha256:c1a69e58a6bb2de65902051d57fde951febad631a20a64572677a1052690482f +mako==1.3.9 \ + --hash=sha256:95920acccb578427a9aa38e37a186b1e43156c87260d7ba18ca63aa4c7cbd3a1 +markdown==3.7 \ + --hash=sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markupsafe==3.0.2 \ + --hash=sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87 +matplotlib==3.10.3 \ + --hash=sha256:cf37d8c6ef1a48829443e8ba5227b44236d7fcaf7647caa3178a4ff9f7a5be05 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.8.3 \ + --hash=sha256:85f2b882d8235c1c1cb0a38d382ccd5b3ba0674d99cb548d49df9342cc688e36 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.9.3 \ + --hash=sha256:69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.8.1 \ + --hash=sha256:badfc7e6832d894b3e9071d92ad621212b7cccd7df622c6cacdb525162ae338f +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:9626d0bca1fb387d5791ca36bacbba298c5ef554747b7ebeafefb4564fc83566 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.6.0 \ + --hash=sha256:6eb054cb4b6db1473f6e15fcc676a08e4732548acd47c708f0e179c2c7c01e89 +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.30.0 \ + --hash=sha256:423872177410cb61683566dc3932db7a76f661a5d2f6f52f02a047f101e1c1de +msal-extensions==1.2.0 \ + --hash=sha256:cf5ba83a2113fa6dc011a254a72f1c223c88d7dfad74cc30617c4679a417704d +msgpack==1.1.0 \ + --hash=sha256:115a7af8ee9e8cddc10f87636767857e7e3717b7a2e97379dc2054712693e90f +multidict==6.4.3 \ + --hash=sha256:11990b5c757d956cd1db7cb140be50a63216af32cd6506329c2c59d732d802db +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.15.0 \ + --hash=sha256:171a9ca9a40cd1843abeca0e405bc1940cd9b305eaeea2dda769ba096932bb22 +mypy-extensions==1.0.0 \ + --hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d +mysql-connector-python==9.2.0 \ + --hash=sha256:b7d149bcc455cf606a4aa604d45267fba16c8abf36056b804f8d16e8f5e753c1 +namex==0.0.8 \ + --hash=sha256:7ddb6c2bb0e753a311b7590f84f6da659dd0c05e65cb89d519d54c0a250c0487 +narwhals==1.36.0 \ + --hash=sha256:e3c50dd1d769bc145f57ae17c1f0f0da6c3d397d62cdd0bb167e9b618e95c9d6 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.4.2 \ + --hash=sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f +nh3==0.2.18 \ + --hash=sha256:8ce0f819d2f1933953fca255db2471ad58184a60508f03e6285e5114b6254844 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.2 \ + --hash=sha256:9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.61.2 \ + --hash=sha256:97cf4f12c728cf77c9c1d7c23707e4d8fb4632b46275f8f3397de33e5877af18 +numpy==2.2.6 \ + --hash=sha256:c1f9540be57940698ed329904db803cf7a402f3fc200bfe599334c9bd84a40b2 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==1.82.0 \ + --hash=sha256:8c40647fea1816516cb3de5189775b30b5f4812777e40b8768f361f232b61b30 +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.32.1 \ + --hash=sha256:bbd19f14ab9f15f0e85e43e6a958aa4cb1f36870ee62b7fd205783a112012724 +optree==0.14.1 \ + --hash=sha256:98f858daa588ccb70bb554087e87d4192852a11416e5b14f3ee70ae1861b92b0 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.16 \ + --hash=sha256:86d127efdd3f9bf5f04809b70faca1e6836556ea3cc46e662b44dab3fe71f3d6 +osqp==0.6.7.post3 \ + --hash=sha256:468588cfb690becba4d1f460c2a53e75530584e3efcf2caed59f5219032e6888 +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==24.2 \ + --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759 +pandas==2.2.3 \ + --hash=sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.6.3 \ + --hash=sha256:ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.0 \ + --hash=sha256:777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.1.0 \ + --hash=sha256:a697cd8ba0383bba3d2d3ada02b34ed268cb548b369943cd349007730c92bddf +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.0.1 \ + --hash=sha256:4714db20fea57a435692c548a4eb4fae454f7daddf15f8d8ba7e1045681d7768 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.4 \ + --hash=sha256:716fee6b2c2a2156fd267e3941bcef28b3b169e6f95d2ab7f1417ef8c76f8a14 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.31.0 \ + --hash=sha256:3fd874d3432fc932863e8cceff2cff8a12a51976b053f2eb6326a0672134a632 +portalocker==2.7.0 \ + --hash=sha256:a07c5b4f3985c3cf4798369631fb7011adb498e2a46d8440efc75a8f29a0f983 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:88c423efef9d7a59dae0614eaed718449c09a5ac79a5f224a8b9664d603f04a3 +protobuf==6.30.2 \ + --hash=sha256:7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.12.0 \ + --hash=sha256:25a9f2db710a6cd2566b3e0e03cf6e04d56276f36ac86b42fa22d81f9a4ac0f2 +ptpython==3.0.29 \ + --hash=sha256:65d75c4871859e4305a020c9b9e204366dceb4d08e0e2bd7b7511bd5e917a402 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==20.0.0 \ + --hash=sha256:96d6a0a37d9c98be08f5ed6a10831d88d52cac7b13f5287f1e0f625a0de8062b +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==2.13.6 \ + --hash=sha256:237c41e29157b962835d356b370ededd57594a26d5894a795960f0047cb5caf5 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.10.6 \ + --hash=sha256:427d664bf0b8a2b34ff5dd0f5a18df00591adcee7198fbd71981054cef37b584 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.27.2 \ + --hash=sha256:cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.10.1 \ + --hash=sha256:dcc07b1277e8b4bf4d7382ca133850e323b7ab048b8353af496d050671c7ac52 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:b1f5686b142759c5b2bdbeaa0692622c2ebb1f10780eb3c174b85f5607fbcf55 +pyogrio==0.10.0 \ + --hash=sha256:2a3e09839590d71ff832aa95c4f23fa00a2c63c3de82c1fbd4fb8d265792acfc +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.4.0 \ + --hash=sha256:db994ab47cadc81057ea1591b90e5b543e2b7ef2d0e31ef41a9bfe763c119dab +pyproj==3.7.0 \ + --hash=sha256:0692f806224e8ed82fe4acfa57268ff444fdaf9f330689f24c0d96e59480cce1 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:54c31de7706d8a9a8c0fc3ea2c70468aba54b027d4974803f8eace9c22aad41c +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.3.5 \ + --hash=sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:810a23a631da596fef7196ddec49b345b1aab13525bb58547eeebe1769edbbc1 +pywin32==310 \ + --hash=sha256:bf5c397c9a9a19a6f62f3fb821fbf36cac08f03770056711f765ec1503972060 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:83a8f20b430bbc5d8957249f875341a60219a4e971580f2ba694fbfb54a45ebc +pyyaml==6.0.2 \ + --hash=sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8 +pyzmq==26.4.0 \ + --hash=sha256:056a97aab4064f526ecb32f4343917a4022a5d9efb6b9df990ff72e1879e40be +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:13dfc0b225a5c180512488fa51f1771e8fa3c06d7fce9fd3c1d018bc03ba0eec +qrcode==8.0 \ + --hash=sha256:9fc05f03305ad27a709eb742cf3097fa19e6f6f93bb9e2f039c0979190f6f1b1 +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.7.2 \ + --hash=sha256:d1333ca7bc3046efe3655d9eeeefb299051b00870b8608cb5bc0b88e3bdb8b67 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:6e2065f68fb1d0bf65adc289c1bdc45ba7e464e406b319d67bb54441a1b9da9e +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b +reportlab==4.3.1 \ + --hash=sha256:0f37dd16652db3ef84363cf744632a28c38bd480d5bf94683466852d7bb678dd +requests==2.32.3 \ + --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:998c01b8e71cf051c28f5d6f1187abbdf5cf45fc0efce5da6c06447cba997034 +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:bdd2b8c1de0849964dbc54037f36b4e9420157e67e45a8709a80d727f52c7da2 +scikit-learn==1.6.1 \ + --hash=sha256:70b1d7e85b1c96383f872a519b3375f92f14731e279a7b4c6cfd650cf5dffc52 +scipy==1.15.3 \ + --hash=sha256:52092bc0472cfd17df49ff17e70624345efece4e1a12b23783a1ac59a1b728ed +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:2995d4099943c3fd754b3e39fe178a9c03dcb9c7d84b40f64ac5eb26d8d6085a +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==79.0.1 \ + --hash=sha256:e147c0549f27767ba362f9da434eab9c5dc0045d5304feb602a0af001089fc51 +shapely==2.1.0 \ + --hash=sha256:f4f47e631aa4f9ec5576eac546eb3f38802e2f82aeb0552f9612cb9a14ece1db +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.19.3 \ + --hash=sha256:1e662336db50ad665777e6548b5076329a94a0c3d4a0472971c588b3ef27de3a +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sklearn-compat==0.1.3 \ + --hash=sha256:a8aaf8ef711988cbd63f187c5560b5f16b25df663aaa1d2d0e1291341d339f80 +skrub==0.5.3 \ + --hash=sha256:b6ba417fa83d1f7e9a69656e0860b061381b9bd19808692a2b5bef8588c72775 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==2.2.0 \ + --hash=sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.6 \ + --hash=sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9 +sphinx==8.1.3 \ + --hash=sha256:09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.40 \ + --hash=sha256:2be94d75ee06548d2fc591a3513422b873490efb124048f50556369a834853b0 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==2.2.1 \ + --hash=sha256:6410a3d3ba0c89e7675d4c273a301d64649c03a5ef1ca101f10b47f895fd0e99 +sspilib==0.2.0 \ + --hash=sha256:40a97ca83e503a175d1dc9461836994e47e8b9bcf56cab81a2c22e27f1993079 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.46.2 \ + --hash=sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35 +statsmodels==0.14.4 \ + --hash=sha256:7f7917a51766b4e074da283c507a25048ad29a18e527207883d73535e0dc6184 +streamlit==1.46.0 \ + --hash=sha256:f8624acabafcf18611a0fac2635cf181a7ba922b45bd131ae15fc8f80e1a5482 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5a62d7a25225bafed786a524c1b9f0910a1128f4232615bf3f8257a73aaa3b16 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.1 \ + --hash=sha256:908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:38665e7d8290188b1e0d57d584eb8110951a9591363316dd41cf8686ab1d0abc +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==14.2 \ + --hash=sha256:44bba1a956c2c9d268bdcdf234d5e5ff4c9b6dc3e300545cbe99af59dda9dcce +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:360977705d0808a1795fcbe98afb5dc4833cb4bb8e421cbb10e93ef0bce816ff +wrapt==1.16.0 \ + --hash=sha256:dcdba5c86e368442528f7060039eda390cc4091bfd1dca41e8046af7c910dda8 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.4.0 \ + --hash=sha256:b27defd082c5cb85d32c695708de6bb05c2838fb7caaf3f952982e602a35b9b8 +xlsxwriter==3.2.3 \ + --hash=sha256:593f8296e8a91790c6d0378ab08b064f34a642b3feb787cf6738236bd0a4860d +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:7e2ee16578af3b52ac2f334c3b1f92262f47e02cc6193c598502bd46f5cd1477 +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.23.0 \ + --hash=sha256:64585e1dba664dc67c7cdabd56c1e5685233fbb1fc1966cfba2a340ec0dfff7b diff --git a/changelogs/requir.64-3_13_5_0slim.txt b/changelogs/requir.64-3_13_5_0slim.txt new file mode 100644 index 00000000..d01e834e --- /dev/null +++ b/changelogs/requir.64-3_13_5_0slim.txt @@ -0,0 +1,998 @@ +absl-py==2.2.2 \ + --hash=sha256:e5797bc6abe45f64fd95dc06394ca3f2bedf3b5d895e9da691c9ee3397d70092 +adbc-driver-manager==1.3.0 \ + --hash=sha256:0d327006f5993385b3625e3524a851ea7050aa3b1716bddd52c8892ac9c42145 +aiofiles==23.2.1 \ + --hash=sha256:19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.20.0 \ + --hash=sha256:36a1deaca0cac40ebe32aac9977a6e2bbc7f5189f23f4a54d5908986729e5bd6 +alabaster==0.7.16 \ + --hash=sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92 +alembic==1.15.2 \ + --hash=sha256:2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.51.0 \ + --hash=sha256:b8b47d482c9aa1f81b923555cebb687c2730309a20d01be554730c8302e0f62a +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==23.1.0 \ + --hash=sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==6.1.6 \ + --hash=sha256:fafc65f47dedcc4a8112bce8b67f215a8076af214be34a2c34abc96d078f2b37 +astropy-iers-data==0.2024.12.23.0.33.24 \ + --hash=sha256:40d3c6b6a5cf4dc6ad91b92b7e0f949e5366234e3c4440302247429fc8294302 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.20.0 \ + --hash=sha256:af6888d937c07a4bf31293335a6166b4d87608cdb5957b49547da6ad87ecf174 +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.32.0 \ + --hash=sha256:eac191a0efb23bfa83fddf321b27b122b4ec847befa3091fa736a5c32c50d7b4 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.21.0 \ + --hash=sha256:258ea6325537352440f71b35c3dffe9d240eae4a5126c1b7ce5efd5766bd9fd9 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.3 \ + --hash=sha256:99045d7d3f08f91f0d656bc9b7efbae189426cd913d830294a15eefa0ea4df16 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.1.31 \ + --hash=sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe +cffi==1.17.1 \ + --hash=sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.1.8 \ + --hash=sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2 +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.15.0 \ + --hash=sha256:22ff867c2a6f2fc2b585360c6072f584f11f275ef6d9242bac24e0fa2df1dfb5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==44.0.0 \ + --hash=sha256:708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.6.4 \ + --hash=sha256:1eed0ac8d8c0141abc73535d652f7b133acfbab2149f5d9d6fa348353c90b442 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.1 \ + --hash=sha256:e000f0533eedf3d6dfbe30bb3c58a054c58f0a7778390342fa577a0dc47adab3 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.4.1 \ + --hash=sha256:aacbb0a9667856fe58385015efd64aca22f0c0b2c5e1b5e633531060303bb4be +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.17.0 \ + --hash=sha256:39421ff999294913e63d41954af955a5dece5d0c55d8fce1426043d70b22d07a +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.13 \ + --hash=sha256:79ce4ed40966c4c1631d0131606b055a5a2f8e430e3f7bf8fd3744b09943e8e8 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.14 \ + --hash=sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.4.1 \ + --hash=sha256:3a7834451b04ef059928045eab6ff6d88ad7bcfd48adc99403127d9a6818b5fa +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2 \ + --hash=sha256:91ceed4e3a6db5aedced65e3c8f963118ea9ba753fc620831c77074e620e7d83 +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==1.1.0 \ + --hash=sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.1.0 \ + --hash=sha256:dc2f730be71cb770e9c715b13374d80dbcee879675121ab51f9683d262ae9a1c +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.115.12 \ + --hash=sha256:e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d +fastavro==1.10.0 \ + --hash=sha256:86baf8c9740ab570d0d4d18517da71626fe9be4d1142bea684db52bd5adb078f +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.0 \ + --hash=sha256:d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.57.0 \ + --hash=sha256:f1d6bc9c23356908db712d282acb3eebd4ae5ec6d8b696aa40342b1d84f8e9e3 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.5.0 \ + --hash=sha256:11aabdd62b8b9c4b84081a3c246506d1cddd2dd93ff0ad53ede5defec7886b28 +fsspec==2025.3.2 \ + --hash=sha256:2daf8dc3d1dfa65b6aa37748d112773a7a08416f6c70d96b264c96476ecaf711 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.38.0 \ + --hash=sha256:e7dae6694313f434a2727bf2906f27ad259bae090d7aa896590d86feec3d9d4a +google-genai==1.16.1 \ + --hash=sha256:6ae5d24282244f577ca4f0d95c09f75ab29e556602c9d3531b70161e34cd2a39 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.1.1 \ + --hash=sha256:b42703b1cf69f2aa1df7d1030b9d77d3e584a70755674d60e710f0af570f3761 +griffe==1.7.2 \ + --hash=sha256:1ed9c2e338a75741fc82083fe5a1bc89cb6142efe126194cc313e34ee6af5423 +groq==0.25.0 \ + --hash=sha256:aadc78b40b1809cdb196b1aa8c7f7293108767df1508cafa3e0d5045d9328e7a +guidata==3.9.0 \ + --hash=sha256:96a19dc92850bdb3e463fa06e8c22793e090db42d1e72c6dae9bda1a98b61210 +h11==0.14.0 \ + --hash=sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.20.2 \ + --hash=sha256:1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.7 \ + --hash=sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.33.0 \ + --hash=sha256:e8668875b40c68f9929150d99727d39e5ebb8a05a98e4191b908dc7ded9074b3 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.2 \ + --hash=sha256:9d576a0c2df0f1cf5041545f2a2eddcf962510162876991cae4d1779fad74556 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.130.4 \ + --hash=sha256:cda4a57115d10ecbefe0a9cc8d69d20a13eb56ecbfe7c24eaee5d368c2b7c477 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.13.0 \ + --hash=sha256:7eb5859f7827cb3babfa5789978c22fe36e56527d9c9768df2d864d98d9b40fe +importlib-metadata==8.6.1 \ + --hash=sha256:02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.19.2 \ + --hash=sha256:7cc9157848baca2e1793b96e79f8bdb1aa7340521d2b7d8a62aa8bc30eab5278 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.36.0 \ + --hash=sha256:12b913914d010dcffa2711505ec8be4bf0180742d97f1e5175e51f22086428c1 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.6 \ + --hash=sha256:446e7630a1d025bdc7635e1169fcc06f2ce33b5bd41c2003edeb4a47c8d4bbb1 +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==5.13.2 \ + --hash=sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.1.0 \ + --hash=sha256:ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.1.3 \ + --hash=sha256:2113195a48ce8cb99d2bb2c6d9b119f58025dde1d727101518e7150c093a66da +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.9.0 \ + --hash=sha256:c8ae3bf27cd1ac5e6e8b7a27487bf3ab5f82318211ec2e1346a5b058756361f7 +joblib==1.4.2 \ + --hash=sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6 +json5==0.10.0 \ + --hash=sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.23.0 \ + --hash=sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566 +jsonschema-specifications==2024.10.1 \ + --hash=sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.7.2 \ + --hash=sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.19.2 \ + --hash=sha256:0d57e15e80c08a4360f0cde0b4c490beddc5d422bb0e9bc1c0b4479d3fb725a6 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.15.0 \ + --hash=sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3 +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.2 \ + --hash=sha256:857111a50bed68542bf55dca784522fe728f9f88b4fe69e8c585db5c50900419 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.14 \ + --hash=sha256:54c33e3306b7fca139d165d6190dc6c0627aafa5d14adfc974a4e9a3d26cb703 +keras==3.10.0 \ + --hash=sha256:c095a6bf90cd50defadf73d4859ff794fad76b775357ef7bd1dbf96388dae7d3 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2 +langchain==0.3.25 \ + --hash=sha256:931f7d2d1eaf182f9f41c5e3272859cfe7f94fc1f7cef6b3e5a46024b4884c21 +langchain-core==0.3.59 \ + --hash=sha256:9686baaff43f2c8175535da13faf40e6866769015e93130c3c1e4243e7244d70 +langchain-text-splitters==0.3.8 \ + --hash=sha256:e75cc0f4ae58dcf07d9f18776400cf8ade27fadd4ff6d264df6278bb302f6f02 +langsmith==0.3.42 \ + --hash=sha256:18114327f3364385dae4026ebfd57d1c1cb46d8f80931098f0f10abe533475ff +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.44.0 \ + --hash=sha256:2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==5.3.0 \ + --hash=sha256:406246b96d552e0503e17a1006fd27edac678b3fcc9f1be71a2f94b4ff61528d +mako==1.3.9 \ + --hash=sha256:95920acccb578427a9aa38e37a186b1e43156c87260d7ba18ca63aa4c7cbd3a1 +markdown==3.7 \ + --hash=sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.3 \ + --hash=sha256:151d89cb8d33cb23345cd12490c76fd5d18a56581a16d950b48c6ff19bb2ab93 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.8.3 \ + --hash=sha256:85f2b882d8235c1c1cb0a38d382ccd5b3ba0674d99cb548d49df9342cc688e36 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.9.3 \ + --hash=sha256:69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.8.1 \ + --hash=sha256:badfc7e6832d894b3e9071d92ad621212b7cccd7df622c6cacdb525162ae338f +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.6.0 \ + --hash=sha256:6eb054cb4b6db1473f6e15fcc676a08e4732548acd47c708f0e179c2c7c01e89 +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.30.0 \ + --hash=sha256:423872177410cb61683566dc3932db7a76f661a5d2f6f52f02a047f101e1c1de +msal-extensions==1.2.0 \ + --hash=sha256:cf5ba83a2113fa6dc011a254a72f1c223c88d7dfad74cc30617c4679a417704d +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.4.3 \ + --hash=sha256:1c152c49e42277bc9a2f7b78bd5fa10b13e88d1b0328221e7aef89d5c60a99a5 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.15.0 \ + --hash=sha256:b9378e2c00146c44793c98b8d5a61039a048e31f429fb0eb546d93f4b000bedf +mypy-extensions==1.0.0 \ + --hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.0.8 \ + --hash=sha256:7ddb6c2bb0e753a311b7590f84f6da659dd0c05e65cb89d519d54c0a250c0487 +narwhals==1.36.0 \ + --hash=sha256:e3c50dd1d769bc145f57ae17c1f0f0da6c3d397d62cdd0bb167e9b618e95c9d6 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.4.2 \ + --hash=sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f +nh3==0.2.18 \ + --hash=sha256:8ce0f819d2f1933953fca255db2471ad58184a60508f03e6285e5114b6254844 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.2 \ + --hash=sha256:9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.61.2 \ + --hash=sha256:59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7 +numpy==2.2.6 \ + --hash=sha256:b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==1.82.0 \ + --hash=sha256:8c40647fea1816516cb3de5189775b30b5f4812777e40b8768f361f232b61b30 +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.32.1 \ + --hash=sha256:bbd19f14ab9f15f0e85e43e6a958aa4cb1f36870ee62b7fd205783a112012724 +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.16 \ + --hash=sha256:fe0a145e96d51971407cb8ba947e63ead2aa915db59d6631a355f5f2150b56b7 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==24.2 \ + --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759 +pandas==2.2.3 \ + --hash=sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.6.3 \ + --hash=sha256:ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.0 \ + --hash=sha256:777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.1.0 \ + --hash=sha256:593c5fd6be85da83656b93ffcccc2312d2d149d251e98588b14fbc288fd8909c +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.0.1 \ + --hash=sha256:4714db20fea57a435692c548a4eb4fae454f7daddf15f8d8ba7e1045681d7768 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.4 \ + --hash=sha256:8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.31.0 \ + --hash=sha256:3fd874d3432fc932863e8cceff2cff8a12a51976b053f2eb6326a0672134a632 +portalocker==2.7.0 \ + --hash=sha256:a07c5b4f3985c3cf4798369631fb7011adb498e2a46d8440efc75a8f29a0f983 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.30.2 \ + --hash=sha256:7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.12.0 \ + --hash=sha256:d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7 +ptpython==3.0.29 \ + --hash=sha256:65d75c4871859e4305a020c9b9e204366dceb4d08e0e2bd7b7511bd5e917a402 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==20.0.0 \ + --hash=sha256:30b3051b7975801c1e1d387e17c588d8ab05ced9b1e14eec57915f79869b5031 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==2.13.6 \ + --hash=sha256:237c41e29157b962835d356b370ededd57594a26d5894a795960f0047cb5caf5 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.10.6 \ + --hash=sha256:427d664bf0b8a2b34ff5dd0f5a18df00591adcee7198fbd71981054cef37b584 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.27.2 \ + --hash=sha256:953101387ecf2f5652883208769a79e48db18c6df442568a0b5ccd8c2723abee +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.10.1 \ + --hash=sha256:45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.4.0 \ + --hash=sha256:db994ab47cadc81057ea1591b90e5b543e2b7ef2d0e31ef41a9bfe763c119dab +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.3.5 \ + --hash=sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==26.4.0 \ + --hash=sha256:23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.0 \ + --hash=sha256:9fc05f03305ad27a709eb742cf3097fa19e6f6f93bb9e2f039c0979190f6f1b1 +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.7.2 \ + --hash=sha256:d1333ca7bc3046efe3655d9eeeefb299051b00870b8608cb5bc0b88e3bdb8b67 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a +reportlab==4.3.1 \ + --hash=sha256:0f37dd16652db3ef84363cf744632a28c38bd480d5bf94683466852d7bb678dd +requests==2.32.3 \ + --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.6.1 \ + --hash=sha256:7a1c43c8ec9fde528d664d947dc4c0789be4077a3647f232869f41d9bf50e0fb +scipy==1.15.3 \ + --hash=sha256:b90ab29d0c37ec9bf55424c064312930ca5f4bde15ee8619ee44e69319aab163 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==79.0.1 \ + --hash=sha256:e147c0549f27767ba362f9da434eab9c5dc0045d5304feb602a0af001089fc51 +shapely==2.1.0 \ + --hash=sha256:1dc8d4364483a14aba4c844b7bd16a6fa3728887e2c33dfa1afa34a3cf4d08a5 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.19.3 \ + --hash=sha256:3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sklearn-compat==0.1.3 \ + --hash=sha256:a8aaf8ef711988cbd63f187c5560b5f16b25df663aaa1d2d0e1291341d339f80 +skrub==0.5.3 \ + --hash=sha256:b6ba417fa83d1f7e9a69656e0860b061381b9bd19808692a2b5bef8588c72775 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==2.2.0 \ + --hash=sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.6 \ + --hash=sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9 +sphinx==8.1.3 \ + --hash=sha256:09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.40 \ + --hash=sha256:641ee2e0834812d657862f3a7de95e0048bdcb6c55496f39c6fa3d435f6ac6ad +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==2.2.1 \ + --hash=sha256:6410a3d3ba0c89e7675d4c273a301d64649c03a5ef1ca101f10b47f895fd0e99 +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.46.2 \ + --hash=sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35 +statsmodels==0.14.4 \ + --hash=sha256:81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0 +streamlit==1.46.0 \ + --hash=sha256:f8624acabafcf18611a0fac2635cf181a7ba922b45bd131ae15fc8f80e1a5482 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.1 \ + --hash=sha256:908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==14.2 \ + --hash=sha256:b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.4.0 \ + --hash=sha256:b27defd082c5cb85d32c695708de6bb05c2838fb7caaf3f952982e602a35b9b8 +xlsxwriter==3.2.3 \ + --hash=sha256:593f8296e8a91790c6d0378ab08b064f34a642b3feb787cf6738236bd0a4860d +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.23.0 \ + --hash=sha256:f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b diff --git a/constraints.txt b/constraints.txt index bf61c161..843a382a 100644 --- a/constraints.txt +++ b/constraints.txt @@ -299,7 +299,7 @@ numba>=0.53.1 numcodecs>=0.7.3 numdifftools>=0.9.39 numexpr>=2.7.3 -numpy>=1.20.2+mkl +numpy>=1.20.2 numpydoc>=1.1.0 oct2py>=5.2.0 octave-kernel>=0.32.0 @@ -425,7 +425,7 @@ pytest>=6.2.3 python-baseconv>=1.2.2 python-dateutil>=2.8.1 python-dotenv>=0.15.0 -python-hdf4>=0.10.0+dummy +python-hdf4>=0.10.0 python-jsonrpc-server>=0.4.0 python-language-server>=0.36.2 python-Levenshtein>=0.12.2 @@ -547,15 +547,14 @@ tinycss>=0.4 toml>=0.10.2 toolz>=0.11.1 -torch>=1.8.1+cpu +torch>=1.8.1 torchaudio>=0.8.1 -torchvision>=0.8.2+cpu - +torchvision>=0.8.2 tornado>=6.1 tqdm>=4.59.0 traitlets>=5.0.5 traittypes>=0.2.1 -tranquilizer>=0.5.0+1.gff8dd5f +tranquilizer>=0.5.0 trio>=0.18.0 trio-asyncio>=0.12.0 twine>=3.4.1 diff --git a/diff.py b/diff.py deleted file mode 100644 index 2d32efa8..00000000 --- a/diff.py +++ /dev/null @@ -1,353 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2013 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython diff script - -Created on Tue Jan 29 11:56:54 2013 -""" - -import os -from pathlib import Path -import re -import shutil - -# Local imports -from winpython import utils - -# pep503 defines normalized package names: www.python.org/dev/peps/pep-0503 -def normalize(name): - return re.sub(r"[-_.]+", "-", name).lower() - - -CHANGELOGS_DIR = str(Path(__file__).parent / "changelogs") -assert Path(CHANGELOGS_DIR).is_dir() - - -class Package(object): - # SourceForge Wiki syntax: - PATTERN = r"\[([a-zA-Z\-\:\/\.\_0-9]*)\]\(([^\]\ ]*)\) \| ([^\|]*) \| ([^\|]*)" - # Google Code Wiki syntax: - PATTERN_OLD = r"\[([a-zA-Z\-\:\/\.\_0-9]*) ([^\]\ ]*)\] \| ([^\|]*) \| ([^\|]*)" - - def __init__(self): - self.name = None - self.version = None - self.description = None - self.url = None - - def __str__(self): - text = f"{self.name} {self.version}" - text += f"\r\n{self.description}\r\nWebsite: {self.url}" - return text - - def from_text(self, text): - try: - self.url, self.name, self.version, self.description = re.match( - self.PATTERN_OLD, text - ).groups() - except AttributeError: - self.name, self.url, self.version, self.description = re.match( - self.PATTERN, text - ).groups() - - def to_wiki(self): - return f" * [{self.name}]({self.url}) {self.version} ({self.description})\r\n" - - def upgrade_wiki(self, other): - # wheel replace '-' per '_' in package name - assert ( - self.name.replace("-", "_").lower() == other.name.replace("-", "_").lower() - ) - return f" * [{self.name}]({self.url}) {other.version} → {self.version} ({self.description})\r\n" - - -class PackageIndex(object): - WINPYTHON_PATTERN = r"\#\# WinPython\-*[0-9b-t]* ([0-9\.a-zA-Z]*)" - TOOLS_LINE = "### Tools" - PYTHON_PACKAGES_LINE = "### Python packages" - HEADER_LINE1 = "Name | Version | Description" - HEADER_LINE2 = "-----|---------|------------" - - def __init__( - self, - version, - basedir=None, - flavor="", - architecture=64, - ): - self.version = version - self.other_packages = {} - self.python_packages = {} - self.flavor = flavor - self.basedir = basedir - self.architecture = architecture - self.from_file(basedir) - - def from_file(self, basedir): - fname = str( - Path(CHANGELOGS_DIR) - / f"WinPython{self.flavor}-{self.architecture}bit-{self.version}.md" - ) - - try: - with open(fname, "r", encoding = 'utf-8') as fdesc: # python3 doesn't like 'rb' - text = fdesc.read() - except: - with open(fname, "r") as fdesc: # python3 doesn't like 'rb' - text = fdesc.read() - self.from_text(text) - - def from_text(self, text): - version = re.match(self.WINPYTHON_PATTERN + self.flavor, text).groups()[0] - assert version == self.version - tools_flag = False - python_flag = False - for line in text.splitlines(): - if line: - if line == self.TOOLS_LINE: - tools_flag = True - continue - elif line == self.PYTHON_PACKAGES_LINE: - tools_flag = False - python_flag = True - continue - elif line in ( - self.HEADER_LINE1, - self.HEADER_LINE2, - "
", - "
", - ): - continue - if tools_flag or python_flag: - package = Package() - package.from_text(line) - if tools_flag: - self.other_packages[package.name] = package - else: - self.python_packages[package.name] = package - - -def diff_package_dicts(dict1_in, dict2_in): - """Return difference between package dict1 and package dict2""" - text = "" - # wheel replace '-' per '_' in key - dict1 = {} - dict2 = {} - for key in dict1_in: - dict1[key.replace("-", "_").lower()] = dict1_in[key] - for key in dict2_in: - dict2[key.replace("-", "_").lower()] = dict2_in[key] - set1, set2 = set(dict1.keys()), set(dict2.keys()) - # New packages - new = sorted(set2 - set1) - if new: - text += "New packages:\r\n\r\n" - for name in new: - package = dict2[name] - text += package.to_wiki() - text += "\r\n" - # Upgraded packages - upgraded_list = [] - for name in sorted(set1 & set2): - package1 = dict1[name] - package2 = dict2[name] - if package1.version != package2.version: - upgraded_list.append(package2.upgrade_wiki(package1)) - if upgraded_list: - text += "Upgraded packages:\r\n\r\n" + f"{''.join(upgraded_list)}" + "\r\n" - # Removed packages - removed = sorted(set1 - set2) - if removed: - text += "Removed packages:\r\n\r\n" - for name in removed: - package = dict1[name] - text += package.to_wiki() - text += "\r\n" - return text - - -def find_closer_version(version1, basedir=None, flavor="", architecture=64): - """Find version which is the closest to `version`""" - builddir = str(Path(basedir) / f"bu{flavor}") - func = lambda name: re.match( - r"WinPython%s-%sbit-([0-9\.]*)\.(txt|md)" % (flavor, architecture), - name, - ) - versions = [func(name).groups()[0] for name in os.listdir(builddir) if func(name)] - # versions:['3.10.0.1', '3.10.10.0', '3.10.2.0'.... '3.10.8.1', '3.10.9.0'] - try: - index = versions.index(version1) - except ValueError: - raise ValueError(f"Unknown version {version1}") - - from packaging import version - version_below = '0.0.0.0' - for v in versions: - if version.parse(v) > version.parse(version_below) and version.parse(v)", - "", - ] - ) - pi1 = PackageIndex( - version1, - basedir=basedir, - flavor=flavor1, - architecture=architecture, - ) - pi2 = PackageIndex( - version2, - basedir=basedir, - flavor=flavor, - architecture=architecture, - ) - tools_text = diff_package_dicts(pi1.other_packages, pi2.other_packages) - if tools_text: - text += PackageIndex.TOOLS_LINE + "\r\n\r\n" + tools_text - py_text = diff_package_dicts(pi1.python_packages, pi2.python_packages) - if py_text: - text += PackageIndex.PYTHON_PACKAGES_LINE + "\r\n\r\n" + py_text - text += "\r\n\r\n* * *\r\n" - return text - - -def _copy_all_changelogs(version, basedir, flavor="", architecture=64): - basever = ".".join(version.split(".")[:2]) - for name in os.listdir(CHANGELOGS_DIR): - if re.match( - r"WinPython%s-%sbit-%s([0-9\.]*)\.(txt|md)" - % (flavor, architecture, basever), - name, - ): - shutil.copyfile( - str(Path(CHANGELOGS_DIR) / name), - str(Path(basedir) / f"bu{flavor}" / name), - ) - - -def write_changelog( - version2, - version1=None, - basedir=None, - flavor="", - release_level="", - architecture=64, -): - """Write changelog between version1 and version2 of WinPython""" - _copy_all_changelogs( - version2, - basedir, - flavor=flavor, - architecture=architecture, - ) - print( - "comparing_package_indexes", - version2, - basedir, - flavor, - architecture, - ) - text = compare_package_indexes( - version2, - version1, - basedir=basedir, - flavor=flavor, - architecture=architecture, - ) - fname = str( - Path(basedir) - / f"bu{flavor}" - / f"WinPython{flavor}-{architecture}bit-{version2}_History.md" - ) - - with open(fname, "w", encoding="utf-8-sig") as fdesc: # python 3 need - fdesc.write(text) - # Copy to winpython/changelogs - shutil.copyfile(fname, str(Path(CHANGELOGS_DIR) / Path(fname).name)) - - -def test_parse_package_index_wiki(version, basedir=None, flavor="", architecture=64): - """Parse the package index Wiki page""" - pi = PackageIndex( - version, - basedir=basedir, - flavor=flavor, - architecture=architecture, - ) - utils.print_box(f"WinPython {pi.version}:") - utils.print_box("Tools:") - for package in pi.other_packages.values(): - print(package) - print("") - utils.print_box("Python packages:") - for package in pi.python_packages.values(): - print(package) - print("") - - -def test_compare(basedir, version2, version1, architecture=64): - print( - compare_package_indexes( - basedir, - version2, - version1, - architecture=architecture, - ) - ) - - -if __name__ == "__main__": - print( - compare_package_indexes( - version2="3.7.4.0", - version1="3.7.2.0", - basedir=r"C:\WinP\bd37", - flavor="Zero", - flavor1="Zero", - architecture=32, - ) - ) - write_changelog( - version2="3.7.4.0", - version1="3.7.2.0", - basedir=r"C:\WinP\bd37", - flavor="Ps2", - architecture=64, - ) - # test_parse_package_index_wiki('2.7.3.3') - # print(compare_package_indexes('2.7.3.3', '2.7.3.1')) - # write_changelog('2.7.4.1', '2.7.4.0') - # write_changelog('3.3.0.0beta2', '3.3.0.0beta1') diff --git a/dot_requirements.txt b/dot_requirements.txt index 68a29ece..c5453f90 100644 --- a/dot_requirements.txt +++ b/dot_requirements.txt @@ -1,5 +1,9 @@ # the essential sqlite_bro -#idlex +setuptools wheel +build +##msvc_runtime # end of requirements.txt + + diff --git a/generate_a_winpython_distro.bat b/generate_a_winpython_distro.bat deleted file mode 100644 index 932738bd..00000000 --- a/generate_a_winpython_distro.bat +++ /dev/null @@ -1,394 +0,0 @@ -rem to launch from a winpython package directory, where 'make.py' is -@echo on - -rem ***************************** -rem 2020-07-05: install msvc_runtime before packages that may want to compile -rem 2020-12-05 : add a constrints.txt file from a recent pip list -rem 2021-03-20 : track successes packages combination are archived for future contraint update -rem 2021-04-22 : path PyPy3 (as we don't try to copy PyPy3.exe to Python.exe) -rem 2023-08-21a: add a pre_step with my_requirements_pre.txt + my_find_links_pre -rem ***************************** - -rem algorithm: -rem 0.0 Initialize variables -rem 1.0 Do 2021-04-22 : patch PyPy3 (as we don't try to copy PyPy3.exe to Python.exe) -rem 2021-04-22b: Patch PyPy3, give '%my_python_target_release%' to make (otherwise known only after unzip) -rem 2 a Pre-clear of previous build infrastructure -rem 2.0 Create a new build -rem 2.1 Create basic build infrastructure -rem 2.2 check infrastructure is in place -rem 2.3 add mandatory packages for build -rem 2.4 add packages pre_requirements (if any) -rem 2.5 add requirement packages -rem 2.8 post-build (if specific workarounds) -rem 2.9 archive success -rem 3.0 Generate Changelog and binaries - - - -rem this is pre-initialised per the program calling this .bat -rem set my_original_path=%path% -rem set my_root_dir_for_builds=D:\WinP - -rem set my_python_target=34 -rem set my_pyver=3.4 -rem set my_flavor=mkl -rem set my_release=84 - - -rem set my_find_link=C:\WinP\packages.srcreq - -rem this is optionaly pre-initialised per the calling program (simpler to manage here) -rem set my_release_level= - - -echo ------------------ -echo 0.0 Initialize variables -echo ------------------ - -if "%my_release_level%"=="" set my_release_level=b4 - -set my_basedir=%my_root_dir_for_builds%\bd%my_python_target% - -set my_buildenv=C:\WinPdev\WPy64-3890 - -if "%my_constraints%"=="" set my_constraints=C:\WinP\constraints.txt - -rem 2021-04-22 : path PyPy3 (as we don't try to copy PyPy3.exe to Python.exe) -if "%target_python_exe%"=="" set target_python_exe=python.exe - - -if %my_python_target%==38 ( - set my_python_target_release=3812 - set my_release=1 -) -if %my_python_target%==39 ( - set my_python_target_release=3915 - set my_release=1 -) - -if %my_python_target%==310 ( - set my_python_target_release=31011 - set my_release=2 -) - -if %my_python_target%==311 ( - set my_python_target_release=3118 - set my_release=1 -) - -if %my_python_target%==312 ( - set my_python_target_release=3123 - set my_release=0 -) - -if %my_python_target%==313 ( - set my_python_target_release=3130 - set my_release=0 -) - - - -rem **** 2018-10-30 create_installer ** -if "%my_create_installer%"=="" set my_create_installer=True - -rem set my_flavor=Slim - -rem set my_arch=32 -rem set my_preclear_build_directory=Yes - -rem 20230821 add a requirement_pre.txt + -rem set my_requirements_pre=C:\WinP\bd311\requirements_mkl_pre.txt -rem set my_find_links_pre=C:\WinP\packages_mkl.srcreq - -rem set my_requirements=C:\Winpents=d:\my_req1.txt -rem set my_find_links=D:\WinPython\packages.srcreq - -rem set my_source_dirs=D:\WinPython\bd34\packages.src D:\WinPython\bd34\packages.win32.Slim -rem set my_toolsdirs=D:\WinPython\bd34\Tools.Slim -rem set my_docsdirs=D:\WinPython\bd34\docs.Slim - -rem set my_install_options=--no-index --pre - -set my_day=%date:/=-% -set my_time=%time:~0,5% -set my_time=%my_time::=_% - -rem was the bug -set my_time=%my_time: =0% - -set my_archive_dir=%~dp0WinPython_build_logs -if not exist %my_archive_dir% mkdir %my_archive_dir% - -set my_archive_log=%my_archive_dir%\build_%my_pyver%._.%my_release%%my_flavor%_%my_release_level%_of_%my_day%_at_%my_time%.txt - - -echo =============== -echo preparing winPython for %my_pyver% (%my_python_target%)release %my_release%%my_flavor% (%my_release_level%) *** %my_arch% bit *** -echo %date% %time% -echo =============== -echo ===============>>%my_archive_log% -echo preparing winPython for %my_pyver% (%my_python_target%)release %my_release%%my_flavor% (%my_release_level%) *** %my_arch% bit ***>>%my_archive_log% -echo %date% %time%>>%my_archive_log% -echo ===============>>%my_archive_log% - - -if not "%my_preclear_build_directory%"=="Yes" goto no_preclear - - -echo ------------------ -echo 1.0 Do a Pre-clear of previous build infrastructure -echo ------------------ -echo ------------------>>%my_archive_log% -echo 1.0 Do a Pre-clear of previous build infrastructure>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ------------------>>%my_archive_log% - -rem 2019-05-10 PATCH for build problem (asking permission to overwrite the file) -del -y %userprofile%\.jupyter\jupyter_notebook_config.py - -cd /D %my_root_dir_for_builds%\bd%my_python_target% - -set build_det=\%my_flavor% -if "%my_flavor%"=="" set build_det= - -dir %build_det% - -rem 2021-02-13 workaround to hard to remove json files -echo ren bu%my_flavor% bu%my_flavor%_old -ren bu%my_flavor% bu%my_flavor%_old - -rem pause -start rmdir /S /Q bu%my_flavor%_old - - -echo rmdir /S /Q bu%my_flavor% -rem pause -rmdir /S /Q bu%my_flavor% -rmdir /S /Q bu%my_flavor% -rmdir /S /Q bu%my_flavor% -rmdir /S /Q bu%my_flavor% -rmdir /S /Q bu%my_flavor% -rmdir /S /Q dist - -echo %date% %time% -echo %date% %time%>>%my_archive_log% - -:no_preclear - -e - -echo ----------------------------- -echo 2.0 Create a new build -echo ---------------------------- >>%my_archive_log% -echo 2.0 Create a new build>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ---------------------------- >>%my_archive_log% - - -echo cd /D %~dp0>>%my_archive_log% -cd /D %~dp0 - -echo set path=%my_original_path%>>%my_archive_log% -set path=%my_original_path% - -echo call %my_buildenv%\scripts\env.bat>>%my_archive_log% -call %my_buildenv%\scripts\env.bat - -echo ----------------------------- -echo 2.1 Create basic build infrastructure -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.1 Create basic build infrastructure>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% - -rem 2019-10-22 new age step1 -rem we don't use requirements -rem we don't create installer at first path -rem we use legacy python build cd /D %~dp0 - -set my_buildenv_path=%path% - -echo python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', toolsdirs=r'%my_toolsdirs%', docsdirs=r'%my_docsdirs%', create_installer='False', python_target_release='%my_python_target_release%')">>%my_archive_log% -echo python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', toolsdirs=r'%my_toolsdirs%', docsdirs=r'%my_docsdirs%', create_installer='False', python_target_release='%my_python_target_release%')" -rem pause -python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', toolsdirs=r'%my_toolsdirs%', docsdirs=r'%my_docsdirs%', create_installer='False', python_target_release='%my_python_target_release%')">>%my_archive_log% - -rem old one -rem echo python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', requirements=r'%my_requirements%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', toolsdirs=r'%my_toolsdirs%', docsdirs=r'%my_docsdirs%', create_installer='%my_create_installer%')">>%my_archive_log% - - -echo ----------------------------- -echo 2.2 check infrastructure is in place -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.2 check infrastructure is in place>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% -rem 2019-10-22 new age step2 -rem we use final environment to install requirements -set path=%my_original_path% - -@echo on -set my_WINPYDIRBASE=%my_root_dir_for_builds%\bd%my_python_target%\bu%my_flavor%\Wpy%my_arch%-%my_python_target_release%%my_release%%my_release_level% - -set WINPYDIRBASE=%my_WINPYDIRBASE% - -rem D/2020-07-04: poka-yoke -if not exist %my_WINPYDIRBASE%\scripts\env.bat ( - echo please check and correct my_python_target_release=%my_python_target_release% - echo my_arch=%my_arch% - echo my_python_target_release=%my_python_target_release% - echo my_release=%my_release% - echo my_release_level=%my_release_level% - echo in generate_a_winpython_distro.bat - echo as %my_WINPYDIRBASE%\scripts\env.bat doesnt exist - pause - exit -) -rem F/2020-07-04: poka-yoke - -call %my_WINPYDIRBASE%\scripts\env.bat -set -echo beg of step 2/3 -rem ok no pause - -echo ----------------------------- -echo 2.3 add mandatory packages for build -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.3 add mandatory packages for build>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% - -rem D/2024-04-10: do not override "/vcruntime140_1.dll" with msvc_runtime wheel -rem echo python.exe -c "import sys;from pathlib import Path;f=open(Path(sys.prefix) / 'pyenv.cfg', 'w');f.write('include-system-site-packages = true\n');f.close">>%my_archive_log% -rem F/2024-04-10 - -rem D/2020-07-05: install msvc_runtime before packages that may want to compile -echo pip install msvc_runtime --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade -echo pip install msvc_runtime --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade>>%my_archive_log% -pip install msvc_runtime --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade -rem F/2020-07-05: install msvc_runtime before packages that may want to compile - - -rem D/2023-08-21a: add a pre_step with my_requirements_pre.txt + my_find_links_pre - -echo ----------------------------- -echo 2.4 add packages pre_requirements (if any) -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.4 add packages pre_requirements (if any) -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log%rem F/20230821 add a pre_step with my_requirements_pre.txt + my_find_links_pre - -if not "Z%my_requirements_pre%Z"=="ZZ" ( - - rem 2023-08-21a: add a pre_step with my_requirements_pre.txt + my_find_links_pre -if "%my_find_links_pre%"=="" set my_find_links_pre=%my_find_links% - -echo pip install -r %my_requirements_pre% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links_pre% --upgrade %new_resolver% -echo pip install -r %my_requirements_pre% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links_pre% --upgrade %new_resolver%>>%my_archive_log% -echo if pip doesn't work, check the path of %my_WINPYDIRBASE% - -pip install -r %my_requirements_pre% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links_pre% --upgrade %new_resolver%>>%my_archive_log% -) else ( -echo no packages pre_requirements -echo no packages pre_requirements>>%my_archive_log% -) -rem F/2023-08-21a: add a pre_step with my_requirements_pre.txt + my_find_links_pre - -echo ----------------------------- -echo 2.5 add requirement packages -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.5 add requirement packages_versions>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% - -echo pip install -r %my_requirements% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade %new_resolver% -echo pip install -r %my_requirements% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade %new_resolver%>>%my_archive_log% -echo if pip doesn't work, check the path of %my_WINPYDIRBASE% - - -rem 2020-12-05 : add a constraints.txt file from a recent pip list -pip install -r %my_requirements% -c %my_constraints% --pre --no-index --trusted-host=None --find-links=%my_find_links% --upgrade %new_resolver%>>%my_archive_log% - -echo mid of step 2/3 - -echo ----------------------------- -echo 2.8 post-build (if specific workarounds) -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.8 post-build (if specific workarounds)>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% -rem finalize -@echo on -call %my_basedir%\run_complement_newbuild.bat %my_WINPYDIRBASE% -echo end of step 2/3 -echo end of step 2/3>>%my_archive_log% -rem pause - -rem ***************************** -rem 2021-03-20 : track successes packages combination are archived for future contraint update -rem ***************************** -echo ----------------------------- -echo 2.9 archive success -echo %date% %time% -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 2.9 archive success >>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% -echo %target_python_exe% -m pip freeze>%my_archive_log%.packages_versions.txt>>%my_archive_log% - -%target_python_exe% -m pip freeze>%my_archive_log%.packages_versions.txt - - -echo ----------------------------- -echo 3.0 Generate Changelog and binaries -echo ----------------------------- -echo ----------------------------->>%my_archive_log% -echo 3.0 Generate Changelog and binaries >>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ----------------------------->>%my_archive_log% - -rem build final changelog and binaries, using create_installer='%my_create_installer%', remove_existing=False , remove : requirements, toolsdirs and docdirs - -set path=%my_original_path% -echo cd /D %~dp0>>%my_archive_log% -cd /D %~dp0 - -echo call %my_buildenv%\scripts\env.bat>>%my_archive_log% -call %my_buildenv%\scripts\env.bat -set - -echo python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', create_installer='%my_create_installer%', remove_existing=False, python_target_release='%my_python_target_release%')">>%my_archive_log% -echo python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', create_installer='%my_create_installer%', remove_existing=False, python_target_release='%my_python_target_release%')" -rem pause -python.exe -c "from make import *;make_all(%my_release%, '%my_release_level%', pyver='%my_pyver%', basedir=r'%my_basedir%', verbose=True, architecture=%my_arch%, flavor='%my_flavor%', install_options=r'%my_install_options%', find_links=r'%my_find_links%', source_dirs=r'%my_source_dirs%', create_installer='%my_create_installer%', remove_existing=False, python_target_release='%my_python_target_release%')">>%my_archive_log% - -echo =============== -echo END OF creation -echo =============== -echo ===============>>%my_archive_log% -echo END OF creation>>%my_archive_log% -echo %date% %time% >>%my_archive_log% -echo ===============>>%my_archive_log% - -rem show logs -start notepad.exe %my_archive_log% - -rem 2021-03-20 : track successes packages combination are archived for future contraint update -start notepad.exe %my_archive_log%.packages_versions.txt - -set path=%my_original_path% -rem pause \ No newline at end of file diff --git a/generate_a_winpython_distropy_meta.bat b/generate_a_winpython_distropy_meta.bat new file mode 100644 index 00000000..e796b2d9 --- /dev/null +++ b/generate_a_winpython_distropy_meta.bat @@ -0,0 +1,2 @@ +cd /D %~dp0 +call "C:\WinPdev\WPy64-310111\python-3.10.11.amd64\python.exe" %~dp0\build_winpython_meta.py %1 diff --git a/generate_winpython_distros311_dot.bat b/generate_winpython_distros311_dot.bat deleted file mode 100644 index 1fdd2ff8..00000000 --- a/generate_winpython_distros311_dot.bat +++ /dev/null @@ -1,46 +0,0 @@ -rem this replace running manually from spyder the make.py -rem to launch from a winpython module 'make' directory - -set my_original_path=%path% - -set my_root_dir_for_builds=C:\Winp -set my_python_target=311 -set my_pyver=3.11 - -set my_flavor=dot - -set my_release=0 - -set my_release_level= - -rem set my_create_installer=False -set my_create_installer=nsis.zip -set my_create_installer=7zip - -set my_arch=64 -set my_preclear_build_directory=Yes - -set tmp_reqdir=%my_root_dir_for_builds%\bd%my_python_target% - -set my_requirements=C:\Winp\bd311\dot_requirements.txt - -set my_find_links=C:\Winp\packages.srcreq - -set my_source_dirs=C:\Winp\bd311\packages.win-amd64 -set my_toolsdirs=C:\Winp\bdTools\Tools.dot -set my_docsdirs=C:\WinP\bdDocs\docs.dot - -set my_install_options=--no-index --pre --trusted-host=None - -call %~dp0\generate_a_winpython_distro.bat - - -set my_arch=32 -set my_preclear_build_directory=No - -set my_source_dirs=C:\Winp\bd311\packages.win32 - -rem call %~dp0\generate_a_winpython_distro.bat - - -pause \ No newline at end of file diff --git a/generate_winpython_distros311_mkl.bat b/generate_winpython_distros311_mkl.bat deleted file mode 100644 index 9f28bf24..00000000 --- a/generate_winpython_distros311_mkl.bat +++ /dev/null @@ -1,44 +0,0 @@ -rem 20230821 add a pre_step with my_requirements_pre.txt + my_find_links_pre -rem this replace running manually from spyder the make.py -rem to launch from a winpython module 'make' directory - -set my_original_path=%path% - -set my_root_dir_for_builds=C:\WinP -set my_python_target=311 -set my_pyver=3.11 - -set my_flavor=mkl - -set my_release=0 - -set my_release_level= - -rem set my_create_installer=False -set my_create_installer=nsis.zip -set my_create_installer=7zip -rem set my_create_installer=False - -set my_arch=64 -set my_preclear_build_directory=Yes - -set tmp_reqdir=%my_root_dir_for_builds%\bd%my_python_target% - -rem 20230821 add a requirement_pre.txt + -set my_requirements_pre=C:\WinP\bd311\requirements_mkl_pre.txt -set my_find_links_pre=C:\WinP\packages_mkl.srcreq - -rem just mkl = 204 Mo total - -set my_requirements=C:\WinP\bd311\requirements_mkl.txt -set my_find_links=C:\WinP\packages.srcreq - -set my_source_dirs=C:\WinP\bd311\packages.win-amd64 -set my_toolsdirs=C:\WinP\bdTools\tools64 -set my_docsdirs=C:\WinP\bdDocs\docs -set my_install_options=--no-index --pre --trusted-host=None - -call %~dp0\generate_a_winpython_distro.bat - - -pause \ No newline at end of file diff --git a/generate_winpython_distros311_qt5.bat b/generate_winpython_distros311_qt5.bat deleted file mode 100644 index b5640e7f..00000000 --- a/generate_winpython_distros311_qt5.bat +++ /dev/null @@ -1,37 +0,0 @@ -rem this replace running manually from spyder the make.py -rem to launch from a winpython module 'make' directory - -set my_original_path=%path% - -set my_root_dir_for_builds=C:\WinP -set my_python_target=311 -set my_pyver=3.11 - -set my_flavor= - -set my_release=0 - -set my_release_level= - -rem set my_create_installer=False -set my_create_installer=nsis.zip -set my_create_installer=7zip - -set my_arch=64 -set my_preclear_build_directory=Yes - -set tmp_reqdir=%my_root_dir_for_builds%\bd%my_python_target% - -set my_requirements=C:\WinP\bd311\Qt5_requirements64.txt - -set my_find_links=C:\WinP\packages.srcreq - -set my_source_dirs=C:\WinP\bd311\packages.win-amd64 -set my_toolsdirs=C:\WinP\bdTools\tools64 -set my_docsdirs=C:\WinP\bdDocs\docs -set my_install_options=--no-index --pre --trusted-host=None - -call %~dp0\generate_a_winpython_distro.bat - - -pause \ No newline at end of file diff --git a/hash.py b/hash.py deleted file mode 100644 index 525ab1f8..00000000 --- a/hash.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -""" -Created on Tue Jun 23 21:30:06 2015 - -@author: famille -""" - -import io -import os -import sys -import hashlib - - -def give_hash(file_in, with_this): - with io.open(file_in, 'rb') as f: - return with_this(f.read()).hexdigest() - -def give_hashblake(file_in, with_this): - with io.open(file_in, 'rb') as f: - return with_this(f.read(),digest_size=32).hexdigest() - - -if __name__ == '__main__': - if len(sys.argv) < 2: - print( - "Usage: " - + sys.argv[0] - + " github-user [github-project]" - ) - exit(1) - file = sys.argv[1] - - header = ( - " MD5" - + " " * (32 - 4) - + " | SHA-1" - + " " * (40 - 5) - + " | SHA-256" - + " " * (64 - 7) - + " | Binary" - + " " * (33 - 5) - + "| Size" - + " " * (20 - 6) - #+ " | SHA3-256" - #+ " " * (64 - 8) - + " | blake2b-256" - + " " * (64 - 11) - ) - line = "|".join( - ["-" * len(i) for i in header.split("|")] - ) - - print(header) - print(line) - - print(""+ - f"{give_hash(file, hashlib.md5)} | " + - f"{give_hash(file, hashlib.sha1)} | " + - f"{give_hash(file, hashlib.sha256)} | " + - f"{os.path.basename(file):33} |"+ - f"{os.path.getsize(file):13,}".replace(",", " ") + ' Bytes | ' + - # f" | {give_hash(file, hashlib.sha3_256)}" - f"{give_hashblake(file, hashlib.blake2b)}") - - - diff --git a/hash_launch.bat b/hash_launch.bat index 08105e73..623765d7 100644 --- a/hash_launch.bat +++ b/hash_launch.bat @@ -1,8 +1,10 @@ -call C:\WPy64-3890\scripts\env.bat +call C:\WinPdev\WPy64-310111\scripts\env.bat cd %~dp0 rem echo %date% %time%>>gdc_counting.txt -python hash.py %1 >>hash_counting_%date:/=_%.txt +python -c "import sys;from winpython import hash; hash.print_hashes(sys.argv[1:])" %* >>hash_counting_%date:/=_%.txt +rem python hash.py %* >>hash_counting_%date:/=_%.txt start notepad.exe hash_counting_%date:/=_%.txt + \ No newline at end of file diff --git a/make.py b/make.py deleted file mode 100644 index 61512cc0..00000000 --- a/make.py +++ /dev/null @@ -1,2145 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython build script - -Created on Sun Aug 12 11:17:50 2012 -""" - -import os -from pathlib import Path -import re -import subprocess -import shutil -import sys - -# Local imports -from winpython import wppm, utils -import diff - - -CHANGELOGS_DIR = str(Path(__file__).parent / "changelogs") -assert Path(CHANGELOGS_DIR).is_dir() - - -def get_drives(): - """Return all active drives""" - import win32api - - return win32api.GetLogicalDriveStrings().split("\000")[:-1] - - -def get_nsis_exe(): - """Return NSIS executable""" - localdir = str(Path(sys.prefix).parent.parent) - for drive in get_drives(): - for dirname in ( - r"C:\Program Files", - r"C:\Program Files (x86)", - drive + r"PortableApps\NSISPortableANSI", - drive + r"PortableApps\NSISPortable", - str(Path(localdir) / "NSISPortableANSI"), - str(Path(localdir) / "NSISPortable"), - ): - for subdirname in (".", "App"): - exe = str(Path(dirname) / subdirname / "NSIS" / "makensis.exe") - if Path(exe).is_file(): - return exe - else: - raise RuntimeError("NSIS is not installed on this computer.") - - -NSIS_EXE = get_nsis_exe() # NSIS Compiler - - -def get_iscc_exe(): - """Return ISCC executable""" - localdir = str(Path(sys.prefix).parent.parent) - for drive in get_drives(): - for dirname in ( - r"C:\Program Files", - r"C:\Program Files (x86)", - # drive+r'PortableApps\NSISPortableANSI', - # drive+r'PortableApps\NSISPortable', - str(Path(localdir) / "Inno Setup 5"), - ): - for subdirname in (".", "App"): - exe = str(Path(dirname) / subdirname / "Inno Setup 5" / "iscc.exe") - if Path(exe).is_file(): - return exe - else: - # raise RuntimeError( - print("Inno Setup 5 is not installed on this computer.") - - -ISCC_EXE = get_iscc_exe() # Inno Setup Compiler (iscc.exe) - - -def get_7zip_exe(): - """Return 7zip executable""" - localdir = str(Path(sys.prefix).parent.parent) - for drive in get_drives(): - for dirname in ( - r"C:\Program Files", - r"C:\Program Files (x86)", - str(Path(localdir) / "7-Zip"), - ): - for subdirname in (".", "App"): - exe = str(Path(dirname) / subdirname / "7-Zip" / "7z.exe") - if Path(exe).is_file(): - return exe - else: - raise RuntimeError("7-Zip is not installed on this computer.") - - -SEVENZIP_EXE = get_7zip_exe() # Inno Setup Compiler (iscc.exe) - - -def replace_in_nsis_file(fname, data): - """Replace text in line starting with *start*, from this position: - data is a list of (start, text) tuples""" - fd = open(fname, "U") - lines = fd.readlines() - fd.close() - for idx, line in enumerate(lines): - for start, text in data: - if start not in ( - "Icon", - "OutFile", - ) and not start.startswith("!"): - start = "!define " + start - if line.startswith(start + " "): - lines[idx] = line[: len(start) + 1] + f'"{text}"' + "\n" - fd = open(fname, "w") - fd.writelines(lines) - print("iss for ", fname, "is", lines) - fd.close() - - -def replace_in_iss_file(fname, data): - """Replace text in line starting with *start*, from this position: - data is a list of (start, text) tuples""" - fd = open(fname, "U") - lines = fd.readlines() - fd.close() - for idx, line in enumerate(lines): - for start, text in data: - if start not in ( - "Icon", - "OutFile", - ) and not start.startswith("!"): - start = "#define " + start - if line.startswith(start + " "): - lines[idx] = line[: len(start) + 1] + f'"{text}"' + "\n" - fd = open(fname, "w") - fd.writelines(lines) - print("Inno Setup for ", fname, "is", lines) - fd.close() - - -def replace_in_7zip_file(fname, data): - """Replace text in line starting with *start*, from this position: - data is a list of (start, text) tuples""" - fd = open(fname, "U") - lines = fd.readlines() - fd.close() - for idx, line in enumerate(lines): - for start, text in data: - if start not in ( - "Icon", - "OutFile", - ) and not start.startswith("!"): - start = "set " + start - if line.startswith(start + "="): - lines[idx] = line[: len(start) + 1] + f"{text}" + "\n" - fd = open(fname, "w") - fd.writelines(lines) - print("7-zip for ", fname, "is", lines) - fd.close() - - -def build_nsis(srcname, dstname, data): - """Build NSIS script""" - portable_dir = str(Path(__file__).resolve().parent / "portable") - shutil.copy(str(Path(portable_dir) / srcname), dstname) - data = [ - ( - "!addincludedir", - str(Path(portable_dir) / "include"), - ) - ] + list(data) - replace_in_nsis_file(dstname, data) - try: - retcode = subprocess.call( - f'"{NSIS_EXE}" -V2 "{dstname}"', - shell=True, - stdout=sys.stderr, - ) - if retcode < 0: - print( - "Child was terminated by signal", - -retcode, - file=sys.stderr, - ) - except OSError as e: - print("Execution failed:", e, file=sys.stderr) - os.remove(dstname) - - -def build_iss(srcname, dstname, data): - """Build Inno Setup Script""" - portable_dir = str(Path(__file__).resolve().parent / "portable") - shutil.copy(str(Path(portable_dir) / srcname), dstname) - data = [("PORTABLE_DIR", portable_dir)] + list(data) - replace_in_iss_file(dstname, data) - try: - retcode = subprocess.call( - f'"{ISCC_EXE}" "{dstname}"', - shell=True, - stdout=sys.stderr, - ) - if retcode < 0: - print( - "Child was terminated by signal", - -retcode, - file=sys.stderr, - ) - except OSError as e: - print("Execution failed:", e, file=sys.stderr) - # os.remove(dstname) - - -def build_7zip(srcname, dstname, data): - """7-Zip Setup Script""" - portable_dir = str(Path(__file__).resolve().parent / "portable") - shutil.copy(str(Path(portable_dir) / srcname), dstname) - data = [ - ("PORTABLE_DIR", portable_dir), - ("SEVENZIP_EXE", SEVENZIP_EXE), - ] + list(data) - replace_in_7zip_file(dstname, data) - try: - # insted of a 7zip command line, we launch a script that does it - # retcode = subprocess.call(f'"{SEVENZIP_EXE}" "{dstname}"'), - retcode = subprocess.call( - f'"{dstname}" ', - shell=True, - stdout=sys.stderr, - ) - if retcode < 0: - print( - "Child was terminated by signal", - -retcode, - file=sys.stderr, - ) - except OSError as e: - print("Execution failed:", e, file=sys.stderr) - # os.remove(dstname) - - -class WinPythonDistribution(object): - """WinPython distribution""" - - MINGW32_PATH = r"\t\mingw32\bin" - R_PATH = r"\t\R\bin" - JULIA_PATH = r"\t\Julia\bin" - NODEJS_PATH = r"\n" # r'\t\n' - - def __init__( - self, - build_number, - release_level, - target, - wheeldir, - toolsdirs=None, - verbose=False, - simulation=False, - basedir=None, - install_options=None, - flavor="", - docsdirs=None, - ): - assert isinstance(build_number, int) - assert isinstance(release_level, str) - self.build_number = build_number - self.release_level = release_level - self.target = target - self.wheeldir = wheeldir - if toolsdirs is None: - toolsdirs = [] - self._toolsdirs = toolsdirs - if docsdirs is None: - docsdirs = [] - self._docsdirs = docsdirs - self.verbose = verbose - self.winpydir = None # new WinPython BaseDirectory - self.distribution = None - self.installed_packages = [] - self.simulation = simulation - self.basedir = basedir # added to build from winpython - self.install_options = install_options - self.flavor = flavor - - # python_fname = the .zip of the python interpreter PyPy ! - # impot re - # re.match(r'(pypy3*-v|python-)([0-9\.rcba]*)((\.|\-)(amd64|win64)?\.zip') - try: # PyPy - self.python_fname = self.get_package_fname( - r"(pypy3|python-)([0-9]|[a-zA-Z]|.)*.zip" - ) - except: # normal Python - self.python_fname = self.get_package_fname( - r"python-([0-9\.rcba]*)((\.|\-)amd64)?\.(zip|zip)" - ) - # osp.join(self.winpydir, self.python_name) = Directory of Python exec - # self.pythondir =osp.join(self.winpydir, self.python_name) - self.python_name = Path(self.python_fname).name[:-4] - self.distname = "winUNKNOWN" # f'win{self.python_name}' # PyPy ? - # vlst = ( - # re.match(r'winpython-([0-9\.]*)', self.distname) - # .groups()[0] - # .split('.') - # ) - self.python_fullversion = "winUNKNOWN" # '.'.join(vlst[:3]) - - @property - def package_index_wiki(self): - """Return Package Index page in Wiki format""" - installed_tools = [] - - def get_tool_path_file(relpath): - if self.simulation: - for dirname in self.toolsdirs: - path = dirname + relpath.replace(r"\t", "") - if Path(path).is_file(): - return path - else: - path = self.winpydir + relpath - if Path(path).is_file(): - return path - - def get_tool_path_dir(relpath): - if self.simulation: - for dirname in self.toolsdirs: - path = dirname + relpath.replace(r"\t", "") - if Path(path).is_dir(): - return path - else: - path = self.winpydir + relpath - if Path(path).is_dir(): - return path - - if get_tool_path_file(r"\t\SciTE.exe"): - installed_tools += [("SciTE", "3.3.7")] - rpath = get_tool_path_dir(self.R_PATH) - if rpath is not None: - rver = utils.get_r_version(rpath) - installed_tools += [("R", rver)] - juliapath = get_tool_path_dir(self.JULIA_PATH) - if juliapath is not None: - juliaver = utils.get_julia_version(juliapath) - installed_tools += [("Julia", juliaver)] - nodepath = get_tool_path_dir(self.NODEJS_PATH) - if nodepath is not None: - nodever = utils.get_nodejs_version(nodepath) - installed_tools += [("Nodejs", nodever)] - npmver = utils.get_npmjs_version(nodepath) - installed_tools += [("npmjs", npmver)] - pandocexe = get_tool_path_file(r"\t\pandoc.exe") - if pandocexe is not None: - pandocver = utils.get_pandoc_version(str(Path(pandocexe).parent)) - installed_tools += [("Pandoc", pandocver)] - vscodeexe = get_tool_path_file(r"\t\VSCode\Code.exe") - if vscodeexe is not None: - installed_tools += [ - ("VSCode", utils.getFileProperties(vscodeexe)["FileVersion"]) - ] - tools = [] - for name, ver in installed_tools: - metadata = wppm.get_package_metadata("tools.ini", name) - url, desc = ( - metadata["url"], - metadata["description"], - ) - tools += [f"[{name}]({url}) | {ver} | {desc}"] - # get all packages installed in the changelog, whatever the method - self.installed_packages = self.distribution.get_installed_packages(update=True) - - packages = [ - f"[{pack.name}]({pack.url}) | {pack.version} | {pack.description}" - for pack in sorted( - self.installed_packages, - key=lambda p: p.name.lower(), - ) - ] - python_desc = "Python programming language with standard library" - tools_f = "\n".join(tools) - packages_f = "\n".join(packages) - return ( - f"""## WinPython {self.winpyver2 + self.flavor} - -The following packages are included in WinPython-{self.winpy_arch}bit v{self.winpyver2+self.flavor} {self.release_level}. - -
- -### Tools - -Name | Version | Description ------|---------|------------ -{tools_f} - -### Python packages - -Name | Version | Description ------|---------|------------ -[Python](http://www.python.org/) | {self.python_fullversion} | {python_desc} -{packages_f}""" - + "\n\n
\n" - ) - - # @property makes self.winpyver becomes a call to self.winpyver() - @property - def winpyver(self): - """Return WinPython version (with flavor and release level!)""" - return f"{self.python_fullversion}.{self.build_number}{self.flavor}{self.release_level}" - - @property - def python_dir(self): - """Return Python dirname (full path) of the target distribution""" - return str(Path(self.winpydir) / self.python_name) # python.exe path - - @property - def winpy_arch(self): - """Return WinPython architecture""" - return f"{self.distribution.architecture}" - - @property - def py_arch(self): - """Return distribution architecture, in Python distutils format: - win-amd64 or win32""" - if self.distribution.architecture == 64: - return "win-amd64" - else: - return "win32" - - @property - def prepath(self): - """Return PATH contents to be prepend to the environment variable""" - path = [ - r"Lib\site-packages\PyQt5", - r"Lib\site-packages\PySide2", - "", # Python root directory - "DLLs", - "Scripts", - r"..\t", - # r"..\t\mingw32\bin", - ] - # if ( - # self.distribution.architecture == 32 - # and osp.isdir(self.winpydir + self.MINGW32_PATH) - # ): - # path += [r".." + self.MINGW32_PATH] - # if self.distribution.architecture == 32: - # path += [r".." + self.R_PATH + r"\i386"] - # if self.distribution.architecture == 64: - # path += [r".." + self.R_PATH + r"\x64"] - path += [r".." + self.JULIA_PATH] - - path += [r".." + self.NODEJS_PATH] - - return path - - @property - def postpath(self): - """Return PATH contents to be append to the environment variable""" - path = [] - # if osp.isfile(self.winpydir + self.THG_PATH): - # path += [r"..\t\TortoiseHg"] - return path - - @property - def toolsdirs(self): - """Return tools directory list""" - # formerly was joining prepared tool dir + the one of building env.. - return [ - # osp.join( - # osp.dirname(osp.abspath(__file__)), 't' - # ) - ] + self._toolsdirs - - @property - def docsdirs(self): - """Return docs directory list""" - if (Path(__file__).resolve().parent / "docs").is_dir(): - return [str(Path(__file__).resolve().parent / "docs")] + self._docsdirs - else: - return self._docsdirs - - def get_package_fname(self, pattern): - """Get package matching pattern in wheeldir""" - path = self.wheeldir - for fname in os.listdir(path): - match = re.match(pattern, fname) - if match is not None or pattern == fname: - return str((Path(path) / fname).resolve()) - else: - raise RuntimeError(f"Could not find required package matching {pattern}") - - def create_batch_script(self, name, contents, do_changes=None): - """Create batch script %WINPYDIR%/name""" - scriptdir = str(Path(self.winpydir) / "scripts") - if not Path(scriptdir).is_dir(): - os.mkdir(scriptdir) - print("dochanges for %s %", name, do_changes) - # live patch pypy3 - contents_final = contents - if do_changes != None: - for i in do_changes: - contents_final = contents_final.replace(i[0], i[1]) - fd = open(str(Path(scriptdir) / name), "w") - fd.write(contents_final) - fd.close() - - def create_launcher( - self, - name, - icon, - command=None, - args=None, - workdir=r"$EXEDIR\scripts", - launcher="launcher_basic.nsi", - ): - """Create exe launcher with NSIS""" - assert name.endswith(".exe") - portable_dir = str(Path(__file__).resolve().parent / "portable") - icon_fname = str(Path(portable_dir) / "icons" / icon) - assert Path(icon_fname).is_file() - - # Customizing NSIS script - if command is None: - if args is not None and ".pyw" in args: - command = "${WINPYDIR}\pythonw.exe" - else: - command = "${WINPYDIR}\python.exe" - if args is None: - args = "" - if workdir is None: - workdir = "" - fname = str(Path(self.winpydir) / (Path(name).stem + ".nsi")) - - data = [ - ("WINPYDIR", f"$EXEDIR\{self.python_name}"), - ("WINPYVER", self.winpyver), - ("COMMAND", command), - ("PARAMETERS", args), - ("WORKDIR", workdir), - ("Icon", icon_fname), - ("OutFile", name), - ] - - build_nsis(launcher, fname, data) - - def create_python_batch( - self, - name, - script_name, - workdir=None, - options=None, - command=None, - ): - """Create batch file to run a Python script""" - if options is None: - options = "" - else: - options = " " + options - if command is None: - if script_name.endswith(".pyw"): - command = 'start "%WINPYDIR%\pythonw.exe"' - else: - command = '"%WINPYDIR%\python.exe"' - changedir = "" - if workdir is not None: - workdir = workdir - changedir = ( - r"""cd/D %s -""" - % workdir - ) - if script_name != "": - script_name = " " + script_name - self.create_batch_script( - name, - r"""@echo off -call "%~dp0env_for_icons.bat" -""" - + changedir - + command - + script_name - + options - + " %*", - ) - - def create_installer(self): - """Create installer with NSIS""" - self._print("Creating WinPython installer") - portable_dir = str(Path(__file__).resolve().parent / "portable") - fname = str(Path(portable_dir) / "installer-tmp.nsi") - data = ( - ("DISTDIR", self.winpydir), - ("ARCH", self.winpy_arch), - ( - "VERSION", - f"{self.python_fullversion}.{self.build_number}{self.flavor}", - ), - ( - "VERSION_INSTALL", - f'{self.python_fullversion.replace(".", "")}' + f"{self.build_number}", - ), - ("RELEASELEVEL", self.release_level), - ) - build_nsis("installer.nsi", fname, data) - self._print_done() - - def create_installer_inno(self): - """Create installer with INNO""" - self._print("Creating WinPython installer INNO") - portable_dir = str(Path(__file__).resolve().parent / "portable") - fname = str(Path(portable_dir) / "installer_INNO-tmp.iss") - data = ( - ("DISTDIR", self.winpydir), - ("ARCH", self.winpy_arch), - ( - "VERSION", - f"{self.python_fullversion}.{self.build_number}{self.flavor}", - ), - ( - "VERSION_INSTALL", - f'{self.python_fullversion.replace(".", "")}' + f"{self.build_number}", - ), - ("RELEASELEVEL", self.release_level), - ) - build_iss("installer_INNO.iss", fname, data) - self._print_done() - - def create_installer_7zip(self, installer_option=""): - """Create installer with 7-ZIP""" - self._print("Creating WinPython installer 7-ZIP") - portable_dir = str(Path(__file__).resolve().parent / "portable") - fname = str(Path(portable_dir) / "installer_7zip-tmp.bat") - data = ( - ("DISTDIR", self.winpydir), - ("ARCH", self.winpy_arch), - ( - "VERSION", - f"{self.python_fullversion}.{self.build_number}{self.flavor}", - ), - ( - "VERSION_INSTALL", - f'{self.python_fullversion.replace(".", "")}' + f"{self.build_number}", - ), - ("RELEASELEVEL", self.release_level), - ) - data += (("INSTALLER_OPTION", installer_option),) - build_7zip("installer_7zip.bat", fname, data) - self._print_done() - - def _print(self, text): - """Print action text indicating progress""" - if self.verbose: - utils.print_box(text) - else: - print(text + "...", end=" ") - - def _print_done(self): - """Print OK at the end of a process""" - if not self.verbose: - print("OK") - - def _extract_python(self): - """Extracting Python installer, creating distribution object""" - self._print("Extracting Python .zip version") - utils.extract_archive( - self.python_fname, - targetdir=self.python_dir + r"\..", - ) - self._print_done() - - def _copy_dev_tools(self): - """Copy dev tools""" - self._print(f"Copying tools from {self.toolsdirs} to {self.winpydir}/t") - toolsdir = str(Path(self.winpydir) / "t") - os.mkdir(toolsdir) - for dirname in [ - ok_dir for ok_dir in self.toolsdirs if Path(ok_dir).is_dir() - ]: # the ones in the make.py script environment - for name in os.listdir(dirname): - path = str(Path(dirname) / name) - copy = shutil.copytree if Path(path).is_dir() else shutil.copyfile - if self.verbose: - print(path + " --> " + str(Path(toolsdir) / name)) - copy(path, str(Path(toolsdir) / name)) - self._print_done() - # move node higher - nodejs_current = str(Path(toolsdir) / "n") - nodejs_target = self.winpydir + self.NODEJS_PATH - if nodejs_current != nodejs_target and Path(nodejs_current).is_dir(): - shutil.move(nodejs_current, nodejs_target) - - def _copy_dev_docs(self): - """Copy dev docs""" - docsdir = str(Path(self.winpydir) / "notebooks") - self._print(f"Copying Noteebook docs from {self.docsdirs} to {docsdir}") - if not Path(docsdir).is_dir(): - os.mkdir(docsdir) - docsdir = str(Path(self.winpydir) / "notebooks" / "docs") - if not Path(docsdir).is_dir(): - os.mkdir(docsdir) - for dirname in self.docsdirs: - for name in os.listdir(dirname): - path = str(Path(dirname) / name) - copy = shutil.copytree if Path(path).is_dir() else shutil.copyfile - copy(path, str(Path(docsdir) / name)) - if self.verbose: - print(path + " --> " + str(Path(docsdir) / name)) - self._print_done() - - def _create_launchers(self): - """Create launchers""" - - self._print("Creating launchers") - self.create_launcher( - "WinPython Command Prompt.exe", - "cmd.ico", - command="$SYSDIR\cmd.exe", - args=r"/k cmd.bat", - ) - self.create_launcher( - "WinPython Powershell Prompt.exe", - "powershell.ico", - command="$SYSDIR\cmd.exe", - args=r"/k cmd_ps.bat", - ) - - self.create_launcher( - "WinPython Terminal.exe", - "terminal.ico", - command="wscript.exe", - args=r"Noshell.vbs WinPython_Terminal.bat", - ) - - self.create_launcher( - "WinPython Interpreter.exe", - "python.ico", - command="$SYSDIR\cmd.exe", - args=r"/k winpython.bat", - ) - - self.create_launcher( - "IDLE (Python GUI).exe", - "python.ico", - command="wscript.exe", - args=r"Noshell.vbs winidle.bat", - ) - - self.create_launcher( - "Spyder.exe", - "spyder.ico", - command="wscript.exe", - args=r"Noshell.vbs winspyder.bat", - ) - - self.create_launcher( - "Spyder reset.exe", - "spyder_reset.ico", - command="wscript.exe", - args=r"Noshell.vbs spyder_reset.bat", - ) - - self.create_launcher( - "WinPython Control Panel.exe", - "winpython.ico", - # command="wscript.exe", - # args=r"Noshell.vbs wpcp.bat", - command="$SYSDIR\cmd.exe", - args=r"/k wpcp.bat", - ) - - # Multi-Qt launchers - #self.create_launcher( - # "Qt Designer.exe", - # "qtdesigner.ico", - # command="wscript.exe", - # args=r"Noshell.vbs qtdesigner.bat", - #) - - #self.create_launcher( - # "Qt Linguist.exe", - # "qtlinguist.ico", - # command="wscript.exe", - # args=r"Noshell.vbs qtlinguist.bat", - #) - - #self.create_launcher( - # "Qt Assistant.exe", - # "qtassistant.ico", - # command="wscript.exe", - # args=r"Noshell.vbs qtassistant.bat", - #) - - # Jupyter launchers - self.create_launcher( - "IPython Qt Console.exe", - "ipython.ico", - command="wscript.exe", - args=r"Noshell.vbs winqtconsole.bat", - ) - - # this one needs a shell to kill fantom processes - self.create_launcher( - "Jupyter Notebook.exe", - "jupyter.ico", - command="$SYSDIR\cmd.exe", - args=r"/k winipython_notebook.bat", # like VSCode + Rise way - # args=r'/k winjupyter_nbclassic.bat', # Jupyterlab in classic look - ) - - self.create_launcher( - "Jupyter Lab.exe", - "jupyter.ico", - command="$SYSDIR\cmd.exe", - args=r"/k winjupyter_lab.bat", - ) - - # VSCode launcher - self.create_launcher( - "VS Code.exe", - "code.ico", - command="wscript.exe", - args=r"Noshell.vbs winvscode.bat", - ) - - self._print_done() - - def _create_batch_scripts_initial(self): - """Create batch scripts""" - self._print("Creating batch scripts initial") - conv = lambda path: ";".join(["%WINPYDIR%\\" + pth for pth in path]) - path = conv(self.prepath) + ";%PATH%;" + conv(self.postpath) - - convps = lambda path: ";".join(["$env:WINPYDIR\\" + pth for pth in path]) - pathps = convps(self.prepath) + ";$env:path;" + convps(self.postpath) - - # PyPy3 - shorty = self.distribution.short_exe - changes = ( - (r"DIR%\python.exe", r"DIR%" + "\\" + shorty), - (r"DIR%\PYTHON.EXE", r"DIR%" + "\\" + shorty), - ) - if (Path(self.distribution.target) / r"lib-python\3\idlelib").is_dir(): - changes += ((r"\Lib\idlelib", r"\lib-python\3\idlelib"),) - self.create_batch_script( - "env.bat", - r"""@echo off -set WINPYDIRBASE=%~dp0.. -rem set PYTHONUTF8=1 would create issues in "movable" patching -rem get a normalize path -set WINPYDIRBASETMP=%~dp0.. -pushd %WINPYDIRBASETMP% -set WINPYDIRBASE=%__CD__% -if "%WINPYDIRBASE:~-1%"=="\" set WINPYDIRBASE=%WINPYDIRBASE:~0,-1% -set WINPYDIRBASETMP= -popd - -set WINPYDIR=%WINPYDIRBASE%""" - + "\\" - + self.python_name - + r""" -rem 2019-08-25 pyjulia needs absolutely a variable PYTHON=%WINPYDIR%python.exe -set PYTHON=%WINPYDIR%\python.exe -set PYTHONPATHz=%WINPYDIR%;%WINPYDIR%\Lib;%WINPYDIR%\DLLs -set WINPYVER=""" - + self.winpyver - + r""" -rem 2023-02-12 try utf-8 on console -rem see https://github.com/pypa/pip/issues/11798#issuecomment-1427069681 -set PYTHONIOENCODING=utf-8 - -set HOME=%WINPYDIRBASE%\settings -rem read https://github.com/winpython/winpython/issues/839 -rem set USERPROFILE=%HOME% -rem set WINPYDIRBASE= -set JUPYTER_DATA_DIR=%HOME% -set JUPYTER_CONFIG_DIR=%WINPYDIR%\etc\jupyter -set JUPYTER_CONFIG_PATH=%WINPYDIR%\etc\jupyter -set WINPYARCH=WIN32 -if "%WINPYDIR:~-5%"=="amd64" set WINPYARCH=WIN-AMD64 -set FINDDIR=%WINDIR%\system32 -echo ";%PATH%;" | %FINDDIR%\find.exe /C /I ";%WINPYDIR%\;" >nul -if %ERRORLEVEL% NEQ 0 ( - set "PATH=""" - + path - + r"""" - cd . -) - -rem force default pyqt5 kit for Spyder if PyQt5 module is there -if exist "%WINPYDIR%\Lib\site-packages\PyQt5\__init__.py" set QT_API=pyqt5 - -rem ****************** -rem handle R if included -rem ****************** -if not exist "%WINPYDIRBASE%\t\R\bin" goto r_bad -set R_HOME=%WINPYDIRBASE%\t\R -if "%WINPYARCH%"=="WIN32" set R_HOMEbin=%R_HOME%\bin\i386 -if not "%WINPYARCH%"=="WIN32" set R_HOMEbin=%R_HOME%\bin\x64 -:r_bad - - -rem ****************** -rem handle Julia if included -rem ****************** -if not exist "%WINPYDIRBASE%\t\Julia\bin" goto julia_bad -set JULIA_HOME=%WINPYDIRBASE%\t\Julia\bin\ -set JULIA_EXE=julia.exe -set JULIA=%JULIA_HOME%%JULIA_EXE% -set JULIA_PKGDIR=%WINPYDIRBASE%\settings\.julia -:julia_bad - - -rem ****************** -rem handle PySide2 if included -rem ****************** -set tmp_pyz=%WINPYDIR%\Lib\site-packages\PySide2 -if not exist "%tmp_pyz%" goto pyside2_conf_exist -set tmp_pyz=%tmp_pyz%\qt.conf -if not exist "%tmp_pyz%" ( - echo [Paths] - echo Prefix = . - echo Binaries = . -)>> "%tmp_pyz%" -:pyside2_conf_exist - -rem ****************** -rem handle PyQt5 if included -rem ****************** -set tmp_pyz=%WINPYDIR%\Lib\site-packages\PyQt5 -if not exist "%tmp_pyz%" goto pyqt5_conf_exist -set tmp_pyz=%tmp_pyz%\qt.conf -if not exist "%tmp_pyz%" ( - echo [Paths] - echo Prefix = . - echo Binaries = . -)>> "%tmp_pyz%" -:pyqt5_conf_exist - - -rem ****************** -rem handle pyqt5_tools if included -rem ****************** -set tmp_pyz=%WINPYDIR%\Lib\site-packages\pyqt5_tools -if not exist "%tmp_pyz%" goto end_pyqt5_tools_conf -set QT_PLUGIN_PATH=%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\plugins -:end_pyqt5_tools_conf - - -rem ****************** -rem handle Pyzo configuration part -rem ****************** -if not exist "%HOME%\.pyzo" mkdir %HOME%\.pyzo -if exist "%HOME%\.pyzo\config.ssdf" goto after_pyzo_conf -set tmp_pyz="%HOME%\.pyzo\config.ssdf" -( - echo shellConfigs2 = list: - echo dict: - echo name = 'Python' - echo exe = '.\\python.exe' - echo ipython = 'no' - echo gui = 'none' -)>> "%tmp_pyz%" - -:after_pyzo_conf - - -rem ****************** -rem WinPython.ini part (removed from nsis) -rem ****************** -if not exist "%WINPYDIRBASE%\settings" mkdir "%WINPYDIRBASE%\settings" -if not exist "%WINPYDIRBASE%\settings\AppData" mkdir "%WINPYDIRBASE%\settings\AppData" -if not exist "%WINPYDIRBASE%\settings\AppData\Roaming" mkdir "%WINPYDIRBASE%\settings\AppData\Roaming" -set winpython_ini=%WINPYDIRBASE%\settings\winpython.ini -if not exist "%winpython_ini%" ( - echo [debug] - echo state = disabled - echo [environment] - echo ## Uncomment lines to override environment variables - echo #HOME = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%% - echo #USERPROFILE = %%HOME%% - echo #JUPYTER_DATA_DIR = %%HOME%% - echo #JUPYTERLAB_SETTINGS_DIR = %%HOME%%\.jupyter\lab - echo #JUPYTERLAB_WORKSPACES_DIR = %%HOME%%\.jupyter\lab\workspaces - echo #WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks -)>> "%winpython_ini%" - -""", - do_changes=changes, - ) - - self.create_batch_script( - "WinPython_PS_Prompt.ps1", - r""" -############################### -### WinPython_PS_Prompt.ps1 ### -############################### -$0 = $myInvocation.MyCommand.Definition -$dp0 = [System.IO.Path]::GetDirectoryName($0) -# $env:PYTHONUTF8 = 1 would create issues in "movable" patching -$env:WINPYDIRBASE = "$dp0\.." -# get a normalize path -# http://stackoverflow.com/questions/1645843/resolve-absolute-path-from-relative-path-and-or-file-name -$env:WINPYDIRBASE = [System.IO.Path]::GetFullPath( $env:WINPYDIRBASE ) - -# avoid double_init (will only resize screen) -if (-not ($env:WINPYDIR -eq [System.IO.Path]::GetFullPath( $env:WINPYDIRBASE+""" - + '"\\' - + self.python_name - + '"' - + r""")) ) { - - -$env:WINPYDIR = $env:WINPYDIRBASE+""" - + '"' - + "\\" - + self.python_name - + '"' - + r""" -# 2019-08-25 pyjulia needs absolutely a variable PYTHON=%WINPYDIR%python.exe -$env:PYTHON = "%WINPYDIR%\python.exe" -$env:PYTHONPATHz = "%WINPYDIR%;%WINPYDIR%\Lib;%WINPYDIR%\DLLs" - - -$env:WINPYVER = '""" - + self.winpyver - + r"""' -# rem 2023-02-12 try utf-8 on console -# rem see https://github.com/pypa/pip/issues/11798#issuecomment-1427069681 -$env:PYTHONIOENCODING = "utf-8" - -$env:HOME = "$env:WINPYDIRBASE\settings" - -# rem read https://github.com/winpython/winpython/issues/839 -# $env:USERPROFILE = "$env:HOME" - -$env:WINPYDIRBASE = "" -$env:JUPYTER_DATA_DIR = "$env:HOME" -$env:WINPYARCH = 'WIN32' -if ($env:WINPYARCH.subString($env:WINPYARCH.length-5, 5) -eq 'amd64') { - $env:WINPYARCH = 'WIN-AMD64' } - - -if (-not $env:PATH.ToLower().Contains(";"+ $env:WINPYDIR.ToLower()+ ";")) { - $env:PATH = """ - + '"' - + pathps - + '"' - + r""" } - -#rem force default pyqt5 kit for Spyder if PyQt5 module is there -if (Test-Path "$env:WINPYDIR\Lib\site-packages\PyQt5\__init__.py") { $env:QT_API = "pyqt5" } - - - -##################### -### handle R if included -##################### -if (Test-Path "$env:WINPYDIR\..\t\R\bin") { - $env:R_HOME = "$env:WINPYDIR\..\t\R" - $env:R_HOMEbin = "$env:R_HOME\bin\x64" - if ("$env:WINPYARCH" -eq "WIN32") { - $env:R_HOMEbin = "$env:R_HOME\bin\i386" - } -} - -##################### -### handle Julia if included -##################### -if (Test-Path "$env:WINPYDIR\..\t\Julia\bin") { - $env:JULIA_HOME = "$env:WINPYDIR\..\t\Julia\bin\" - $env:JULIA_EXE = "julia.exe" - $env:JULIA = "$env:JULIA_HOME$env:JULIA_EXE" - $env:JULIA_PKGDIR = "$env:WINPYDIR\..\settings\.julia" -} - -##################### -### handle PySide2 if included -##################### - -$env:tmp_pyz = "$env:WINPYDIR\Lib\site-packages\PySide2" -if (Test-Path "$env:tmp_pyz") { - $env:tmp_pyz = "$env:tmp_pyz\qt.conf" - if (-not (Test-Path "$env:tmp_pyz")) { - "[Paths]"| Add-Content -Path $env:tmp_pyz - "Prefix = ."| Add-Content -Path $env:tmp_pyz - "Binaries = ."| Add-Content -Path $env:tmp_pyz - } -} - -##################### -### handle PyQt5 if included -##################### -$env:tmp_pyz = "$env:WINPYDIR\Lib\site-packages\PyQt5" -if (Test-Path "$env:tmp_pyz") { - $env:tmp_pyz = "$env:tmp_pyz\qt.conf" - if (-not (Test-Path "$env:tmp_pyz")) { - "[Paths]"| Add-Content -Path $env:tmp_pyz - "Prefix = ."| Add-Content -Path $env:tmp_pyz - "Binaries = ."| Add-Content -Path $env:tmp_pyz - } -} - - -##################### -### handle pyqt5_tools if included -##################### -$env:tmp_pyz = "$env:WINPYDIR\Lib\site-packages\pyqt5_tools" -if (Test-Path "$env:tmp_pyz") { - $env:QT_PLUGIN_PATH = "WINPYDIR\Lib\site-packages\pyqt5_tools\Qt\plugins" -} - - -##################### -### handle Pyzo configuration part -##################### -$env:tmp_pyz = "$env:HOME\.pyzo" -if (-not (Test-Path "$env:tmp_pyz")) { md -Path "$env:tmp_pyz" } -$env:tmp_pyz = "$env:HOME\.pyzo\config.ssdf" -if (-not (Test-Path "$env:tmp_pyz")) { -shellConfigs2 = list:| Add-Content -Path $env:tmp_pyz - dict:| Add-Content -Path $env:tmp_pyz - name = 'Python'| Add-Content -Path $env:tmp_pyz - exe = '.\\python.exe'| Add-Content -Path $env:tmp_pyz - ipython = 'no'| Add-Content -Path $env:tmp_pyz - gui = 'none'| Add-Content -Path $env:tmp_pyz -} - - -##################### -### WinPython.ini part (removed from nsis) -##################### -if (-not (Test-Path "$env:WINPYDIR\..\settings")) { md -Path "$env:WINPYDIR\..\settings" } -if (-not (Test-Path "$env:WINPYDIR\..\settings\AppData")) { md -Path "$env:WINPYDIR\..\settings\AppData" } -if (-not (Test-Path "$env:WINPYDIR\..\settings\AppData\Roaming")) { md -Path "$env:WINPYDIR\..\settings\AppData\Roaming" } -$env:winpython_ini = "$env:WINPYDIR\..\settings\winpython.ini" -if (-not (Test-Path $env:winpython_ini)) { - "[debug]" | Add-Content -Path $env:winpython_ini - "state = disabled" | Add-Content -Path $env:winpython_ini - "[environment]" | Add-Content -Path $env:winpython_ini - "## Uncomment lines to override environment variables" | Add-Content -Path $env:winpython_ini - "#HOME = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%" | Add-Content -Path $env:winpython_ini - "#USERPROFILE = %%HOME%%" | Add-Content -Path $env:winpython_ini - "#JUPYTER_DATA_DIR = %%HOME%%" | Add-Content -Path $env:winpython_ini - "#JUPYTERLAB_SETTINGS_DIR = %%HOME%%\.jupyter\lab" | Add-Content -Path $env:winpython_ini - "#JUPYTERLAB_WORKSPACES_DIR = %%HOME%%\.jupyter\lab\workspaces" | Add-Content -Path $env:winpython_ini - "#WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks" | Add-Content -Path $env:winpython_ini -} - - -} -############################### -### Set-WindowSize -############################### -Function Set-WindowSize { -Param([int]$x=$host.ui.rawui.windowsize.width, - [int]$y=$host.ui.rawui.windowsize.heigth, - [int]$buffer=$host.UI.RawUI.BufferSize.heigth) - - $buffersize = new-object System.Management.Automation.Host.Size($x,$buffer) - $host.UI.RawUI.BufferSize = $buffersize - $size = New-Object System.Management.Automation.Host.Size($x,$y) - $host.ui.rawui.WindowSize = $size -} -# Windows10 yelling at us with 150 40 6000 -# no more needed ? -# Set-WindowSize 195 40 6000 - -### Colorize to distinguish -#$host.ui.RawUI.BackgroundColor = "DarkBlue" -$host.ui.RawUI.BackgroundColor = "Black" -$host.ui.RawUI.ForegroundColor = "White" - -""", - do_changes=changes, - ) - - self.create_batch_script( - "cmd_ps.bat", - r"""@echo off -rem safe bet -call "%~dp0env_for_icons.bat" -Powershell.exe -Command "& {Start-Process PowerShell.exe -ArgumentList '-ExecutionPolicy RemoteSigned -noexit -File ""%~dp0WinPython_PS_Prompt.ps1""'}" -exit -""", - do_changes=changes, - ) - - self.create_batch_script( - "WinPython_Interpreter_PS.bat", - r"""@echo off -rem no safe bet (for comparisons) -Powershell.exe -Command "& {Start-Process PowerShell.exe -ArgumentList '-ExecutionPolicy RemoteSigned -noexit -File ""%~dp0WinPython_PS_Prompt.ps1""'}" -exit -""", - do_changes=changes, - ) - - self.create_batch_script( - "env_for_icons.bat", - r"""@echo off -call "%~dp0env.bat" -set WINPYWORKDIR=%WINPYDIRBASE%\Notebooks - -rem default is as before: Winpython ..\Notebooks -set WINPYWORKDIR1=%WINPYWORKDIR% - -rem if we have a file or directory in %1 parameter, we use that directory -if not "%~1"=="" ( - if exist "%~1" ( - if exist "%~1\" ( - rem echo it is a directory %~1 - set WINPYWORKDIR1=%~1 - ) else ( - rem echo it is a file %~1, so we take the directory %~dp1 - set WINPYWORKDIR1=%~dp1 - ) - ) -) else ( -rem if it is launched from another directory , we keep it that one echo %__CD__% -if not "%__CD__%"=="%~dp0" set WINPYWORKDIR1="%__CD__%" -) -rem remove potential doublequote -set WINPYWORKDIR1=%WINPYWORKDIR1:"=% -rem remove some potential last \ -if "%WINPYWORKDIR1:~-1%"=="\" set WINPYWORKDIR1=%WINPYWORKDIR1:~0,-1% - -FOR /F "delims=" %%i IN ('cscript /nologo "%~dp0WinpythonIni.vbs"') DO set winpythontoexec=%%i -%winpythontoexec%set winpythontoexec= - -rem ****************** -rem missing student directory part -rem ****************** - -if not exist "%WINPYWORKDIR%" mkdir "%WINPYWORKDIR%" - -if not exist "%HOME%\.spyder-py%WINPYVER:~0,1%" mkdir "%HOME%\.spyder-py%WINPYVER:~0,1%" -if not exist "%HOME%\.spyder-py%WINPYVER:~0,1%\workingdir" echo %HOME%\Notebooks>"%HOME%\.spyder-py%WINPYVER:~0,1%\workingdir" - -rem ******* make cython use mingwpy part ******* -if not exist "%WINPYDIRBASE%\settings\pydistutils.cfg" goto no_cython -if not exist "%HOME%\pydistutils.cfg" xcopy "%WINPYDIRBASE%\settings\pydistutils.cfg" "%HOME%" -:no_cython -""", - do_changes=changes, - ) - - self.create_batch_script( - "Noshell.vbs", - r""" -'from http://superuser.com/questions/140047/how-to-run-a-batch-file-without-launching-a-command-window/390129 -If WScript.Arguments.Count >= 1 Then - ReDim arr(WScript.Arguments.Count-1) - For i = 0 To WScript.Arguments.Count-1 - Arg = WScript.Arguments(i) - If InStr(Arg, " ") > 0 or InStr(Arg, "&") > 0 Then Arg = chr(34) & Arg & chr(34) - arr(i) = Arg - Next - - RunCmd = Join(arr) - CreateObject("Wscript.Shell").Run RunCmd, 0 , True -End If - """, - ) - - self.create_batch_script( - "WinPythonIni.vbs", - r""" -Set colArgs = WScript.Arguments -If colArgs.Count> 0 Then - Filename=colArgs(0) -else - Filename="..\settings\winpython.ini" -end if -my_lines = Split(GetFile(FileName) & vbNewLine , vbNewLine ) -segment = "environment" -txt="" -Set objWSH = CreateObject("WScript.Shell") -For each l in my_lines - if left(l, 1)="[" then - segment=split(mid(l, 2, 999) & "]","]")(0) - ElseIf left(l, 1) <> "#" and instr(l, "=")>0 then - data = Split(l & "=", "=") - if segment="debug" and trim(data(0))="state" then data(0)= "WINPYDEBUG" - if segment="environment" or segment= "debug" then - txt= txt & "set " & rtrim(data(0)) & "=" & translate(ltrim(data(1))) & "&& " - objWSH.Environment("PROCESS").Item(rtrim(data(0))) = translate(ltrim(data(1))) - end if - if segment="debug" and trim(data(0))="state" then txt= txt & "set WINPYDEBUG=" & trim(data(1)) & "&&" - End If -Next -wscript.echo txt - - -Function GetFile(ByVal FileName) - Set FS = CreateObject("Scripting.FileSystemObject") - If Left(FileName,3)="..\" then FileName = FS.GetParentFolderName(FS.GetParentFolderName(Wscript.ScriptFullName)) & mid(FileName,3,9999) - If Left(FileName,3)=".\" then FileName = FS.GetParentFolderName(FS.GetParentFolderName(Wscript.ScriptFullName)) & mid(FileName,3,9999) - On Error Resume Next - GetFile = FS.OpenTextFile(FileName).ReadAll -End Function - -Function translate(line) - set dos = objWSH.Environment("PROCESS") - tab = Split(line & "%", "%") - for i = 1 to Ubound(tab) step 2 - if tab(i)& "" <> "" and dos.Item(tab(i)) & "" <> "" then tab(i) = dos.Item(tab(i)) - next - translate = Join(tab, "") -end function - """, - ) - - def _create_batch_scripts(self): - """Create batch scripts""" - self._print("Creating batch scripts") - - # PyPy3 - shorty = self.distribution.short_exe - changes = ( - (r"DIR%\python.exe", r"DIR%" + "\\" + shorty), - (r"DIR%\PYTHON.EXE", r"DIR%" + "\\" + shorty), - ) - if (Path(self.distribution.target) / r"lib-python\3\idlelib").is_dir(): - changes += ((r"\Lib\idlelib", r"\lib-python\3\idlelib"),) - self.create_batch_script( - "readme.txt", - r"""These batch files are required to run WinPython icons. - -These files should help the user writing his/her own -specific batch file to call Python scripts inside WinPython. -The environment variables are set-up in 'env_.bat' and 'env_for_icons.bat'.""", - ) - - self.create_batch_script( - "make_cython_use_mingw.bat", - r"""@echo off -call "%~dp0env.bat" - -rem ****************** -rem mingw part -rem ****************** - -set pydistutils_cfg=%WINPYDIRBASE%\settings\pydistutils.cfg - -set tmp_blank= -( - echo [config] - echo compiler=mingw32 - echo. - echo [build] - echo compiler=mingw32 - echo. - echo [build_ext] - echo compiler=mingw32 -) > "%pydistutils_cfg%" - -echo cython has been set to use mingw32 -echo to remove this, remove file "%pydistutils_cfg%" - -rem pause - -""", - ) - - self.create_batch_script( - "make_cython_use_vc.bat", - r"""@echo off -call "%~dp0env.bat" -set pydistutils_cfg=%WINPYDIRBASE%\settings\pydistutils.cfg -echo [config]>%pydistutils_cfg% - """, - ) - - self.create_batch_script( - "make_winpython_movable.bat", - r"""@echo off -call "%~dp0env.bat" -echo patch pip and current launchers for move - -"%WINPYDIR%\python.exe" -c "from winpython import wppm;dist=wppm.Distribution(r'%WINPYDIR%');dist.patch_standard_packages('pip', to_movable=True)" -pause - """, - do_changes=changes, - ) - - self.create_batch_script( - "make_winpython_fix.bat", - r"""@echo off -call "%~dp0env.bat" -echo patch pip and current launchers for non-move - -"%WINPYDIR%\python.exe" -c "from winpython import wppm;dist=wppm.Distribution(r'%WINPYDIR%');dist.patch_standard_packages('pip', to_movable=False)" -pause - """, - do_changes=changes, - ) - - self.create_batch_script( - "make_working_directory_be_not_winpython.bat", - r"""@echo off -set winpython_ini=%~dp0..\\settings\winpython.ini -( - echo [debug] - echo state = disabled - echo [environment] - echo ## Uncomment lines to override environment variables - echo HOME = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\settings - echo USERPROFILE = %%HOME%% - echo JUPYTER_DATA_DIR = %%HOME%% - echo #JUPYTERLAB_SETTINGS_DIR = %%HOME%%\.jupyter\lab - echo #JUPYTERLAB_WORKSPACES_DIR = %%HOME%%\.jupyter\lab\workspaces - echo WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks -) > "%winpython_ini%" - call "%~dp0env_for_icons.bat" - mkdir %HOMEDRIVE%%HOMEPATH%\Documents\WinPython%WINPYVER%\settings - mkdir %HOMEDRIVE%%HOMEPATH%\Documents\WinPython%WINPYVER%\settings\AppData - mkdir %HOMEDRIVE%%HOMEPATH%\Documents\WinPython%WINPYVER%\settings\AppData\Roaming -""", - ) - - self.create_batch_script( - "make_working_directory_be_winpython.bat", - r"""@echo off -set winpython_ini=%~dp0..\\settings\winpython.ini -( - echo [debug] - echo state = disabled - echo [environment] - echo ## Uncomment lines to override environment variables - echo #HOME = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\settings - echo #USERPROFILE = %%HOME%% - echo #JUPYTER_DATA_DIR = %%HOME%% - echo #JUPYTERLAB_SETTINGS_DIR = %%HOME%%\.jupyter\lab - echo #JUPYTERLAB_WORKSPACES_DIR = %%HOME%%\.jupyter\lab\workspaces - echo #WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks -) > "%winpython_ini%" -""", - ) - - self.create_batch_script( - "make_working_directory_and_userprofile_be_winpython.bat", - r"""@echo off -set winpython_ini=%~dp0..\\settings\winpython.ini -( - echo [debug] - echo state = disabled - echo [environment] - echo ## Uncomment lines to override environment variables - echo #HOME = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\settings - echo USERPROFILE = %%HOME%% - echo #JUPYTER_DATA_DIR = %%HOME%% - echo #JUPYTERLAB_SETTINGS_DIR = %%HOME%%\.jupyter\lab - echo #JUPYTERLAB_WORKSPACES_DIR = %%HOME%%\.jupyter\lab\workspaces - echo #WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks -) > "%winpython_ini%" -""", - ) - - self.create_batch_script( - "cmd.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -if not "%WINPYWORKDIR%"=="%WINPYWORKDIR1%" cd %WINPYWORKDIR1% -cmd.exe /k""", - ) - - self.create_batch_script( - "WinPython_Terminal.bat", - r"""@echo off -rem call "%~dp0env_for_icons.bat" %* -rem if not "%WINPYWORKDIR%"=="%WINPYWORKDIR1%" cd %WINPYWORKDIR1% -rem "%USERPROFILE%\AppData\Local\Microsoft\WindowsApps\wt.exe" -Powershell.exe -Command "& {Start-Process PowerShell.exe -ArgumentList '-ExecutionPolicy RemoteSigned -noexit -File ""%~dp0WinPython_PS_Prompt.ps1""'}" -exit -""", - ) - - self.create_batch_script( - "python.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -rem backward compatibility for python command-line users -if not "%WINPYWORKDIR%"=="%WINPYWORKDIR1%" cd %WINPYWORKDIR1% -"%WINPYDIR%\python.exe" %* -""", - do_changes=changes, - ) - - self.create_batch_script( - "winpython.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -rem backward compatibility for non-ptpython users -if exist "%WINPYDIR%\scripts\ptpython.exe" ( - "%WINPYDIR%\scripts\ptpython.exe" %* -) else ( - "%WINPYDIR%\python.exe" %* -) -""", - do_changes=changes, - ) - - self.create_batch_script( - "winidle.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -"%WINPYDIR%\python.exe" "%WINPYDIR%\Lib\idlelib\idle.pyw" %* -""", - do_changes=changes, - ) - - self.create_batch_script( - "winspyder.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -rem cd/D "%WINPYWORKDIR%" -if exist "%WINPYDIR%\scripts\spyder3.exe" ( - "%WINPYDIR%\scripts\spyder3.exe" %* -w "%WINPYWORKDIR1%" -) else ( - "%WINPYDIR%\scripts\spyder.exe" %* -w "%WINPYWORKDIR1%" -) -""", - ) - - self.create_batch_script( - "spyder_reset.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -if exist "%WINPYDIR%\scripts\spyder3.exe" ( - "%WINPYDIR%\scripts\spyder3.exe" --reset %* -) else ( - "%WINPYDIR%\scripts\spyder.exe" --reset %* -) -""", - ) - - self.create_batch_script( - "winipython_notebook.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -"%WINPYDIR%\scripts\jupyter-notebook.exe" %* -""", - ) - - self.create_batch_script( - "winjupyter_nbclassic.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -"%WINPYDIR%\scripts\jupyter-nbclassic.exe" %* -""", - ) - - self.create_batch_script( - "winjupyter_lab.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -"%WINPYDIR%\scripts\jupyter-lab.exe" %* -""", - ) - - self.create_batch_script( - "winqtconsole.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -"%WINPYDIR%\scripts\jupyter-qtconsole.exe" %* -""", - ) - - self.create_batch_script( - "qtdemo.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -if exist "%WINPYDIR%\Lib\site-packages\PyQt5\examples\qtdemo\qtdemo.py" ( - "%WINPYDIR%\python.exe" "%WINPYDIR%\Lib\site-packages\PyQt5\examples\qtdemo\qtdemo.py" -) -if exist "%WINPYDIR%\Lib\site-packages\PySide2\examples\datavisualization\bars3d.py" ( - "%WINPYDIR%\python.exe" "%WINPYDIR%\Lib\site-packages\PySide2\examples\datavisualization\bars3d.py" -) -""", - do_changes=changes, - ) - - self.create_batch_script( - "qtdesigner.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -if "%QT_API%"=="" ( set QT_API=pyqt5 ) -if "%QT_API%"=="pyqt5" ( - if exist "%WINPYDIR%\Scripts\designer.exe" ( - "%WINPYDIR%\Scripts\designer.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\designer.exe" ( - "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\designer.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5-tools\designer.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5-tools\designer.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PyQt5\designer.exe" ( - "%WINPYDIR%\Lib\site-packages\PyQt5\designer.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PySide2\designer.exe" ( - "%WINPYDIR%\Lib\site-packages\PySide2\designer.exe" %* - ) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\designer.exe" %* - ) -) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\designer.exe" %* -) -""", - ) - - self.create_batch_script( - "qtassistant.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -if "%QT_API%"=="" ( set QT_API=pyqt5 ) -if "%QT_API%"=="pyqt5" ( - if exist "%WINPYDIR%\Scripts\assistant.exe" ( - "%WINPYDIR%\Scripts\assistant.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\assistant.exe" ( - "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\assistant.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\assistant.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\assistant.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5-tools\assistant.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5-tools\assistant.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PyQt5\assistant.exe" ( - "%WINPYDIR%\Lib\site-packages\PyQt5\assistant.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PySide2\assistant.exe" ( - "%WINPYDIR%\Lib\site-packages\PySide2\assistant.exe" %* - ) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\assistant.exe" %* - ) -) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\assistant.exe" %* -) -""", - ) - - self.create_batch_script( - "qtlinguist.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYWORKDIR1%" -if "%QT_API%"=="" ( set QT_API=pyqt5 ) -if "%QT_API%"=="pyqt5" ( - if exist "%WINPYDIR%\Scripts\linguist.exe" ( - "%WINPYDIR%\Scripts\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\linguist.exe" ( - "%WINPYDIR%\Lib\site-packages\qt5_applications\Qt\bin\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\linguist.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\bin\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5-tools\linguist.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5-tools\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\pyqt5_tools\linguist.exe" ( - "%WINPYDIR%\Lib\site-packages\pyqt5_tools\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PyQt5\linguist.exe" ( - cd/D "%WINPYDIR%\Lib\site-packages\PyQt5" - "%WINPYDIR%\Lib\site-packages\PyQt5\linguist.exe" %* - "%WINPYDIR%\Lib\site-packages\pyqt5_tools\linguist.exe" %* - ) else if exist "%WINPYDIR%\Lib\site-packages\PySide2\linguist.exe" ( - "%%WINPYDIR%\Lib\site-packages\PySide2\linguist.exe" %* - ) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\linguist.exe" %* - ) -) else ( - "%WINPYDIR%\Lib\site-packages\PySide6\linguist.exe" %* -) - -""", - ) - - self.create_python_batch( - "register_python.bat", - r'"%WINPYDIR%\Lib\site-packages\winpython\register_python.py"', - workdir=r'"%WINPYDIR%\Scripts"', - ) - - self.create_python_batch( - "unregister_python.bat", - r'"%WINPYDIR%\Lib\site-packages\winpython\unregister_python.py"', - workdir=r'"%WINPYDIR%\Scripts"', - ) - - self.create_batch_script( - "register_python_for_all.bat", - r"""@echo off -call "%~dp0env.bat" -call "%~dp0register_python.bat" --all""", - ) - - self.create_batch_script( - "unregister_python_for_all.bat", - r"""@echo off -call "%~dp0env.bat" -call "%~dp0unregister_python.bat" --all""", - ) - - self.create_batch_script( - "wpcp.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -rem cd/D "%WINPYWORKDIR1%" -rem "%WINPYDIR%\python.exe" -m winpython.controlpanel %* -if not "%WINPYWORKDIR%"=="%WINPYWORKDIR1%" cd/d %WINPYWORKDIR1% -cmd.exe /k "echo wppm & wppm" -""", - do_changes=changes, - ) - - self.create_batch_script( - "upgrade_pip.bat", - r"""@echo off -call "%~dp0env.bat" -echo this will upgrade pip with latest version, then patch it for WinPython portability ok ? -pause -"%WINPYDIR%\python.exe" -m pip install --upgrade pip -"%WINPYDIR%\python.exe" -c "from winpython import wppm;dist=wppm.Distribution(r'%WINPYDIR%');dist.patch_standard_packages('pip', to_movable=True) -pause -""", - do_changes=changes, - ) - - self.create_batch_script( - "winpyzo.bat", - r"""@echo off -call "%~dp0env_for_icons.bat" %* -cd/D "%WINPYDIR%" -"%WINPYDIR%\scripts\pyzo.exe" %* -""", - ) - - self.create_batch_script( # virtual environment mimicking - "activate.bat", - r"""@echo off -call "%~dp0env.bat" %* -""", - ) - # pre-run mingw batch - print("now pre-running extra mingw") - filepath = str(Path(self.winpydir) / "scripts" / "make_cython_use_mingw.bat") - p = subprocess.Popen(filepath, shell=True, stdout=subprocess.PIPE) - stdout, stderr = p.communicate() - - self._print_done() - - self.create_batch_script( - "winvscode.bat", - r"""@echo off -rem launcher for VScode -call "%~dp0env_for_icons.bat" %* -rem cd/D "%WINPYWORKDIR1%" -if exist "%WINPYDIR%\..\t\vscode\code.exe" ( - "%WINPYDIR%\..\t\vscode\code.exe" %* -) else ( -if exist "%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" ( - "%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" %* -) else ( - "code.exe" %* -)) - -""", - ) - - - - def _run_complement_batch_scripts(self, this_batch="run_complement.bat"): - """tools\..\run_complement.bat for final complements""" - print(f"now {this_batch} in tooldirs\..") - for post_complement in list( - set([str(Path(s).parent) for s in self._toolsdirs]) - ): - filepath = str(Path(post_complement) / this_batch) - if Path(filepath).is_file(): - print(f'launch "{filepath}" for "{self.winpydir}"') - self._print(f'launch "{filepath}" for "{self.winpydir}" !') - try: - retcode = subprocess.call( - f'"{filepath}" "{self.winpydir}"', - shell=True, - stdout=sys.stderr, - ) - if retcode < 0: - print( - "Child was terminated by signal", - -retcode, - file=sys.stderr, - ) - self._print( - "Child was terminated by signal ! ", - -retcode, - file=sys.stderr, - ) - except OSError as e: - print( - "Execution failed:", - e, - file=sys.stderr, - ) - self._print( - "Execution failed !:", - e, - file=sys.stderr, - ) - self._print_done() - - def make( - self, - remove_existing=True, - requirements=None, - my_winpydir=None, - ): # , find_links=None): - """Make WinPython distribution in target directory from the installers - located in wheeldir - - remove_existing=True: (default) install all from scratch - remove_existing=False: only for test purpose (launchers/scripts) - requirements=file(s) of requirements (separated by space if several)""" - if self.simulation: - print( - "WARNING: this is just a simulation!", - file=sys.stderr, - ) - print( - self.python_fname, - self.python_name, - self.distname, - self.python_fullversion, # PyPy to delete or move - ) - if my_winpydir is None: - self.winpydir = str(Path(self.target) / self.distname) # PyPy to delete - else: - self.winpydir = str( - Path(self.target) / my_winpydir - ) # Create/re-create the WinPython base directory - self._print(f"Creating WinPython {my_winpydir} base directory") - if Path(self.winpydir).is_dir() and remove_existing and not self.simulation: - shutil.rmtree(self.winpydir, onerror=utils.onerror) - if not Path(self.winpydir).is_dir(): - os.mkdir(self.winpydir) - if remove_existing and not self.simulation: - # Create settings directory - # (only necessary if user is starting an application with a batch - # scripts before using an executable launcher, because the latter - # is creating the directory automatically) - os.mkdir(str(Path(self.winpydir) / "settings")) - os.mkdir(str(Path(self.winpydir) / "settings" / "AppData")) - os.mkdir(str(Path(self.winpydir) / "settings" / "AppData" / "Roaming")) - self._print_done() - - if remove_existing and not self.simulation: - self._extract_python() # unzip Python interpreter - self.distribution = wppm.Distribution( - self.python_dir, - verbose=self.verbose, - indent=True, - ) - - # PyPy: get Fullversion from the executable - self.python_fullversion = utils.get_python_long_version( - self.distribution.target - ) - - # PyPY: Assert that WinPython version and real python version do match - self._print( - f"Python version{self.python_fullversion.replace('.','')}" - + f"\nDistro Name {self.distribution.target}" - ) - assert self.python_fullversion.replace(".", "") in self.distribution.target, ( - "Distro Directory doesn't match the Python version it ships" - + f"\nPython version: {self.python_fullversion.replace('.','')}" - + f"\nDistro Name: {self.distribution.target}" - ) - - if remove_existing: - if not self.simulation: - # self._add_msvc_files() # replaced per msvc_runtime package - self._create_batch_scripts_initial() - self._create_batch_scripts() - # always create all launchers (as long as it is NSIS-based) - self._create_launchers() - # pre-patch current pip (until default python has pip 8.0.3) - - # PyPY must ensure pip - # "pypy3.exe -m ensurepip" - utils.python_execmodule("ensurepip", self.distribution.target) - - self.distribution.patch_standard_packages("pip") - # not forced update of pip (FIRST) and setuptools here - for req in ("pip", "setuptools", "wheel", "winpython"): - actions = ["install", "--upgrade", "--pre", req] - if self.install_options is not None: - actions += self.install_options - print(f"piping {' '.join(actions)}") - self._print(f"piping {' '.join(actions)}") - self.distribution.do_pip_action(actions) - self.distribution.patch_standard_packages(req) - # no more directory base package install: use requirements.txt - # 2019-05-03 removed self._install_all_other_packages() - print("self.simulation zz", self.simulation) - if not self.simulation: - self._copy_dev_tools() - self._copy_dev_docs() - if not self.simulation: - - if requirements: - if not list(requirements) == requirements: - requirements = requirements.split() - for req in requirements: - actions = ["install", "-r", req] - if self.install_options is not None: - actions += self.install_options - print(f"piping {' '.join(actions)}") - self._print(f"piping {' '.join(actions)}") - self.distribution.do_pip_action(actions) - # actions=["install","-r", req, "--no-index", - # "--trusted-host=None"]+ links, - # install_options=None) - self._run_complement_batch_scripts() - self.distribution.patch_standard_packages() - if remove_existing and not self.simulation: - self._print("Cleaning up distribution") - self.distribution.clean_up() - self._print_done() - # Writing package index - self._print("Writing package index") - # winpyver2 = need the version without build part - # but with self.distribution.architecture - self.winpyver2 = f"{self.python_fullversion}.{self.build_number}" - fname = str( - Path(self.winpydir).parent - / ( - f"WinPython{self.flavor}-" - + f"{self.distribution.architecture}bit-" - + f"{self.winpyver2}.md" - ) - ) - open(fname, "w", encoding='utf-8').write(self.package_index_wiki) - # Copy to winpython/changelogs - shutil.copyfile( - fname, - str(Path(CHANGELOGS_DIR) / Path(fname).name), - ) - self._print_done() - - # Writing changelog - self._print("Writing changelog") - diff.write_changelog( - self.winpyver2, - basedir=self.basedir, - flavor=self.flavor, - release_level=self.release_level, - architecture=self.distribution.architecture, - ) - self._print_done() - - -def rebuild_winpython(basedir, targetdir, architecture=64, verbose=False): - """Rebuild winpython package from source""" - basedir = basedir - packdir = targetdir - for name in os.listdir(packdir): - if name.startswith("winpython-") and name.endswith((".exe", ".whl", ".gz")): - os.remove(str(Path(packdir) / name)) - # utils.build_wininst is replaced per flit 2023-02-27 - utils.buildflit_wininst( - str(Path(__file__).resolve().parent), - copy_to=packdir, - architecture=architecture, - verbose=verbose, - installer="bdist_wheel", - ) - - -def transform_in_list(list_in, list_type=None): - """Transform a 'String or List' in List""" - if list_in is None: - list_in = "" - if not list_in == list(list_in): - list_in = list_in.split() - if list_type: - print(list_type, list_in) - return list_in - - -def make_all( - build_number, - release_level, - pyver, - architecture, - basedir, - verbose=False, - remove_existing=True, - create_installer=True, - simulation=False, - install_options=["--no-index"], - flavor="", - requirements=None, - find_links=None, - source_dirs=None, - toolsdirs=None, - docsdirs=None, - python_target_release=None, # 37101 for 3.7.10 -): - """Make WinPython distribution, for a given base directory and - architecture: - `build_number`: build number [int] - `release_level`: release level (e.g. 'beta1', '') [str] - `pyver`: python version ('3.4' or 3.5') - `architecture`: [int] (32 or 64) - `basedir`: where will be created tmp_wheel and Winpython build - r'D:\Winpython\basedir34'. - `requirements`: the package list for pip r'D:\requirements.txt', - `install_options`: pip options r'--no-index --pre --trusted-host=None', - `find_links`: package directories r'D:\Winpython\packages.srcreq', - `source_dirs`: the python.zip + rebuilt winpython wheel package directory, - `toolsdirs`: r'D:\WinPython\basedir34\t.Slim', - `docsdirs`: r'D:\WinPython\basedir34\docs.Slim'""" - - assert basedir is not None, "The *basedir* directory must be specified" - assert architecture in (32, 64) - utils.print_box( - f"Making WinPython {architecture}bits" - + f" at {Path(basedir) / ('bu' + flavor)}" - ) - - # Create Build director, where Winpython will be constructed - builddir = str(Path(basedir) / ("bu" + flavor)) - if not Path(builddir).is_dir(): - os.mkdir(builddir) - # use source_dirs as the directory to re-build Winpython wheel - wheeldir = source_dirs - - # Rebuild Winpython in this wheel dir - rebuild_winpython( - basedir=basedir, - targetdir=wheeldir, - architecture=architecture, - ) - - # Optional pre-defined toolsdirs - toolsdirs = transform_in_list(toolsdirs, "toolsdirs=") - - # Optional pre-defined toolsdirs - print("docsdirs input", docsdirs) - docsdirs = transform_in_list(docsdirs, "docsdirs=") - print("docsdirs output", docsdirs) - - # install_options = ['--no-index', '--pre', f'--find-links={wheeldir)'] - install_options = transform_in_list(install_options, "install_options") - - find_links = transform_in_list(find_links, "find_links") - - find_list = [f"--find-links={l}" for l in find_links + [wheeldir]] - dist = WinPythonDistribution( - build_number, - release_level, - builddir, - wheeldir, - toolsdirs, - verbose=verbose, - simulation=simulation, - basedir=basedir, - install_options=install_options + find_list, - flavor=flavor, - docsdirs=docsdirs, - ) - # define a pre-defined winpydir, instead of having to guess - - # extract the python subversion to get WPy64-3671b1 - my_x = "".join(dist.python_fname.replace(".amd64", "").split(".")[-2:-1]) - while not my_x.isdigit() and len(my_x) > 0: - my_x = my_x[:-1] - # simplify for PyPy - if not python_target_release == None: - my_winpydir = ( - "WPy" - + f"{architecture}" - + "-" - + python_target_release - + "" - + f"{build_number}" - ) + release_level - # + flavor - else: - my_winpydir = ( - "WPy" - + f"{architecture}" - + "-" - + pyver.replace(".", "") - + "" - + my_x - + "" - + f"{build_number}" - ) + release_level - # + flavor - - dist.make( - remove_existing=remove_existing, - requirements=requirements, - my_winpydir=my_winpydir, - ) - # ,find_links=osp.join(basedir, 'packages.srcreq')) - if str(create_installer).lower() != "false" and not simulation: - if "nsis" in str(create_installer).lower(): - dist.create_installer() # NSIS installer (can't handle big build) - if "inno" in str(create_installer).lower() or ( - str(create_installer).lower() == "true" - ): - dist.create_installer_inno() # INNO Setup 5 (not 7zip friendly) - if "7zip" in str(create_installer).lower(): - dist.create_installer_7zip(".exe") # 7-zip (no licence splash screen) - if ".7z" in str(create_installer).lower(): - dist.create_installer_7zip(".7z") # 7-zip (no licence splash screen) - if ".zip" in str(create_installer).lower(): - dist.create_installer_7zip(".zip") # 7-zip (no licence splash screen) - return dist - - -if __name__ == "__main__": - # DO create only one version at a time - # You may have to manually delete previous build\winpython-.. directory - - make_all( - 1, - release_level="build3", - pyver="3.4", - basedir=r"D:\Winpython\basedir34", - verbose=True, - architecture=64, - flavor="Barebone", - requirements=r"D:\Winpython\basedir34\barebone_requirements.txt", - install_options=r"--no-index --pre --trusted-host=None", - find_links=r"D:\Winpython\packages.srcreq", - source_dirs=r"D:\WinPython\basedir34\packages.win-amd64", - toolsdirs=r"D:\WinPython\basedir34\t.Slim", - docsdirs=r"D:\WinPython\basedir34\docs.Slim", - ) diff --git a/mandatory_requirements.txt b/mandatory_requirements.txt new file mode 100644 index 00000000..6f152f17 --- /dev/null +++ b/mandatory_requirements.txt @@ -0,0 +1,5 @@ +# the mandatory +pip +setuptools +#not Wheel +wppm diff --git a/portable/config.txt b/portable/config.txt deleted file mode 100644 index aa4a72a7..00000000 --- a/portable/config.txt +++ /dev/null @@ -1,5 +0,0 @@ -;!@Install@!UTF-8! -Title="WinPython" -BeginPrompt="Do you want to install WinPython?" -InstallPath="." -;!@InstallEnd@! \ No newline at end of file diff --git a/portable/icons/powershell.ico b/portable/icons/powershell.ico deleted file mode 100644 index 2878c965..00000000 Binary files a/portable/icons/powershell.ico and /dev/null differ diff --git a/portable/icons/qt.ico b/portable/icons/qt.ico deleted file mode 100644 index 170f9df6..00000000 Binary files a/portable/icons/qt.ico and /dev/null differ diff --git a/portable/icons/qtassistant.ico b/portable/icons/qtassistant.ico deleted file mode 100644 index a945814d..00000000 Binary files a/portable/icons/qtassistant.ico and /dev/null differ diff --git a/portable/icons/qtdesigner.ico b/portable/icons/qtdesigner.ico deleted file mode 100644 index 45f8a264..00000000 Binary files a/portable/icons/qtdesigner.ico and /dev/null differ diff --git a/portable/icons/qtlinguist.ico b/portable/icons/qtlinguist.ico deleted file mode 100644 index 091b9abc..00000000 Binary files a/portable/icons/qtlinguist.ico and /dev/null differ diff --git a/portable/icons/r.ico b/portable/icons/r.ico deleted file mode 100644 index 5ae70e63..00000000 Binary files a/portable/icons/r.ico and /dev/null differ diff --git a/portable/icons/spyder.ico b/portable/icons/spyder.ico deleted file mode 100644 index 4aafb087..00000000 Binary files a/portable/icons/spyder.ico and /dev/null differ diff --git a/portable/icons/spyder_reset.ico b/portable/icons/spyder_reset.ico deleted file mode 100644 index 02978206..00000000 Binary files a/portable/icons/spyder_reset.ico and /dev/null differ diff --git a/portable/icons/winpython.ico b/portable/icons/winpython.ico deleted file mode 100644 index c8147ae6..00000000 Binary files a/portable/icons/winpython.ico and /dev/null differ diff --git a/portable/installer.nsi b/portable/installer.nsi deleted file mode 100644 index 7f74a93c..00000000 --- a/portable/installer.nsi +++ /dev/null @@ -1,112 +0,0 @@ -/* - -WinPython installer script - -Copyright © 2012 Pierre Raybaut, 2016+ WinPython team -Licensed under the terms of the MIT License -(see winpython/__init__.py for details) - -*/ - -;================================================================ -; These lines are automatically replaced when creating installer: -; (see winpython/make.py) -!define DISTDIR "D:\Pierre\maketest\winpython-2.7.3.amd64" -!define ARCH "64" -!define VERSION "2.7.3.0" -; 2018-04-04 need to minimize path length of installation further: remove flavor in install path -!define VERSION_INSTALL "2.7.3.0" -!define RELEASELEVEL "beta2" ; empty means final release -;================================================================ - -!define ID "WinPython" -; 2018-04-20 need to minimize path length of installation: -;!define ID_INSTALL "WinPython" -!define ID_INSTALL "WPy" - -!define FILE_DESCRIPTION "${ID} Installer" -!define COMPANY "${ID}" -!define BRANDING "${ID}, the portable Python Distribution for Scientists" - -SetCompressor /SOLID LZMA -SetCompressorDictSize 16 ; MB - -; Includes -;------------------------------------------------------------------------------ -!include "MUI2.nsh" -!include "Sections.nsh" -!include "FileFunc.nsh" - -; General -;------------------------------------------------------------------------------ -Name "${ID} ${ARCH} ${VERSION}${RELEASELEVEL}" -OutFile "${DISTDIR}\..\${ID}${ARCH}-${VERSION}${RELEASELEVEL}.exe" - -; 2018-03-31 need to minimize path length of installation: -;InstallDir "$EXEDIR\${ID}${ARCH}-${VERSION}${RELEASELEVEL}" -; 2018-04-04 need to minimize path length of installation further: remove arch + flavor -;InstallDir "$EXEDIR\${ID_INSTALL}${ARCH}-${VERSION}${RELEASELEVEL}" -;InstallDir "$EXEDIR\${ID_INSTALL}-${VERSION_INSTALL}${RELEASELEVEL}" -; 2018-04-20 need to minimize path length of installation: -;InstallDir "$EXEDIR\${ID_INSTALL}" -; 2018-12-10 keep 64 for 7zip similarity -InstallDir "$EXEDIR\${ID_INSTALL}${ARCH}-${VERSION_INSTALL}${RELEASELEVEL}" - -BrandingText "${BRANDING}" -XPStyle on -RequestExecutionLevel user - -; Interface Configuration -;------------------------------------------------------------------------------ -!define MUI_HEADERIMAGE -!define MUI_HEADERIMAGE_BITMAP "images\banner.bmp" -!define MUI_HEADERIMAGE_UNBITMAP "images\banner.bmp" -!define MUI_ABORTWARNING -!define MUI_ICON "icons\install.ico" - -; Pages -;------------------------------------------------------------------------------ -!define MUI_WELCOMEFINISHPAGE_BITMAP "images\win.bmp" -!insertmacro MUI_PAGE_LICENSE "license.txt" -!insertmacro MUI_PAGE_DIRECTORY -!insertmacro MUI_PAGE_INSTFILES -!define MUI_FINISHPAGE_NOAUTOCLOSE -!define MUI_FINISHPAGE_REBOOTLATER_DEFAULT -#!define MUI_FINISHPAGE_RUN "$INSTDIR\${ID}.exe" -!define MUI_FINISHPAGE_LINK "Visit ${ID} official website" -!define MUI_FINISHPAGE_LINK_LOCATION "http://winpython.github.io/" -!insertmacro MUI_PAGE_FINISH -!insertmacro MUI_LANGUAGE "English" - -; Installer Sections -;------------------------------------------------------------------------------ -Section "" SecWinPython - SectionIn RO - SetOutPath "$INSTDIR" - File /r "${DISTDIR}\*.*" -SectionEnd - -; Functions -;------------------------------------------------------------------------------ -Function .onInit - ; Check if an instance of this installer is already running - System::Call 'kernel32::CreateMutexA(i 0, i 0, t "${ID}") i .r1 ?e' - Pop $R0 - StrCmp $R0 0 +3 - MessageBox MB_OK|MB_ICONEXCLAMATION "Installer is already running." - Abort - - InitPluginsDir - File /oname=$PLUGINSDIR\splash.bmp "images\splash.bmp" - advsplash::show 1000 600 400 -1 $PLUGINSDIR\splash - Delete $PLUGINSDIR\splash.bmp -FunctionEnd - -; Descriptions -;------------------------------------------------------------------------------ -VIAddVersionKey "ProductName" "${ID}" -VIAddVersionKey "CompanyName" "${COMPANY}" -VIAddVersionKey "LegalCopyright" "Copyright © 2012 Pierre RAYBAUT" -VIAddVersionKey "FileDescription" "${FILE_DESCRIPTION}" -VIAddVersionKey "FileVersion" "${VERSION}" -VIProductVersion "${VERSION}" diff --git a/portable/installer_7zip.bat b/portable/installer_7zip.bat deleted file mode 100644 index c19e7ab7..00000000 --- a/portable/installer_7zip.bat +++ /dev/null @@ -1,77 +0,0 @@ -rem Copyright @ 2018 WinPython team -rem Licensed under the terms of the MIT License -rem (see winpython/__init__.py for details) - -rem This is to do a 7-zip installer - -rem ================================================================ -rem These lines are automatically replaced when creating installer: -rem (see winpython/make.py) -set SEVENZIP_EXE=C:\Program Files (x86)\7-Zip\7z -set DISTDIR=C:\WinP\bd36\buPs2\winp64-3.6.x.0 -set ARCH=64 -set VERSION=3.6.7.0Ps2 - -rem 2018-04-04 need to minimize path length of installation further: remove flavor in install path - -set VERSION_INSTALL=3670 - -set RELEASELEVEL=beta3 -set PORTABLE_DIR=C:\WinPython-64bit-3.4.3.7Qt5\winpython_github20181029\portable -set INSTALLER_OPTION=.exe - -rem ================================================================ -rem these lines are static definitions -set ID=Winpython -set ID_INSTALL=WPy -set FILE_DESCRIPTION=%ID% Installer -set COMPANY=%ID% -set BRANDING=%ID%, the portable Python Distribution for Scientists -set COPYRIGHT=Copyright © 2018+ WinPython Team -set MyAppPublisher=WinPython team -set MyAppURL=https://winpython.github.io/ - -rem OutputBaseFilename "{#ID}{#ARCH}-{#VERSION}{#RELEASELEVEL}" - -rem ================================================================ [Setup] -rem OutFile "${DISTDIR}\..\${ID}${ARCH}-${VERSION}${RELEASELEVEL}.exe" -set MyBinaryOutputDir=%DISTDIR%\.. -set OutputBaseFilename=%ID%%ARCH%-%VERSION%%RELEASELEVEL% - -rem 7-zip uncompress the directory compressed %DISTDIR% (no option to change it in gui) - -rem ================================================================ -rem 2019-03-16 copy license at source (due to 7zip limitations) - -copy/Y %PORTABLE_DIR%\license.txt %DISTDIR%\license.txt - -rem ================================================================ - -echo %time% - -rem compression + include auto_extract in GUI mode -if "%INSTALLER_OPTION%"==".exe" ( - "%SEVENZIP_EXE%" -mx5 a "%MyBinaryOutputDir%\%OutputBaseFilename%.exe" %DISTDIR% -sfx7z.sfx - echo autoextract using command line options - echo "%MyBinaryOutputDir%\%OutputBaseFilename%.exe" -y -o%MyBinaryOutputDir%\zz > NUL - ) - -if "%INSTALLER_OPTION%"==".7z" ( - "%SEVENZIP_EXE%" -mx5 a "%MyBinaryOutputDir%\%OutputBaseFilename%.7z" %DISTDIR% - echo no autoextract - ) -if "%INSTALLER_OPTION%"==".zip" ( - "%SEVENZIP_EXE%" -tzip -mx5 a "%MyBinaryOutputDir%\%OutputBaseFilename%.zip" %DISTDIR% - echo no autoextract - ) - - - -rem -mx1 = speed fastest -rem -mx3 = speed fast -rem -mx5 = speed normal -rem -mx7 = compress maximum -rem -mx9 = compress ultra - -rem -t7z = [by default] 7 zip compression , the only choice with auto-extract -rem -tzip = Zip compatible compression. diff --git a/portable/installer_INNO.iss b/portable/installer_INNO.iss deleted file mode 100644 index b93fac30..00000000 --- a/portable/installer_INNO.iss +++ /dev/null @@ -1,112 +0,0 @@ -; Script generated by the Inno Setup Script Wizard. -; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! - -;WinPython Inno Setup Installer script -;Copyright © 2018 WinPython team -;Licensed under the terms of the MIT License -;(see winpython/__init__.py for details) - -;================================================================ -; These lines are automatically replaced when creating installer: -; (see winpython/make.py) -#define DISTDIR "C:\WinP\bd36\buPs2\winp64-3.6.x.0" -#define ARCH "64" -#define VERSION "3.6.7.0Ps2" -; 2018-04-04 need to minimize path length of installation further: remove flavor in install path -#define VERSION_INSTALL "3670" -#define RELEASELEVEL "beta3" ; empty means final release -;================================================================ - -#define ID "Winpython" -; 2018-04-20 need to minimize path length of installation: -;#define ID_INSTALL "WinPython" -#define ID_INSTALL "WPy" -#define FILE_DESCRIPTION "{#ID} Installer" -#define COMPANY "{#ID}" -#define BRANDING "{#ID}, the portable Python Distribution for Scientists" -#define COPYRIGHT "Copyright 2018+ WinPython Team" -#define PORTABLE_DIR "C:\WinPython-64bit-3.4.3.7Qt5\winpython_github20181029\portable" -#define MyAppPublisher "WinPython team" -#define MyAppURL "https://winpython.github.io/" - -;OutFile "${DISTDIR}\..\${ID}${ARCH}-${VERSION}${RELEASELEVEL}.exe" -#define MyBinaryOutputDir "C:\WinP\bd37\buZero" -; nota: OutputBaseFilename "{#ID}{#ARCH}-{#VERSION}{#RELEASELEVEL}" -#define MyInstallerDir "WPy-3710b3" - -[Setup] -;don't write in registery -CreateUninstallRegKey=no -;give choice of install (same logic) -UsePreviousAppDir=no - -; if ever wanted FLIPFLAP (see Task section also) -;Uninstallable=not IsTaskSelected('portablemode') - -; NOTE: The value of AppId uniquely identifies this application. -; Do not use the same AppId value in installers for other applications. -; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) -AppId={{0012652B-17E7-4C1F-815B-0DE013D47DA0} -AppName={#ID}{#VERSION} -AppVersion={#VERSION} {#COPYRIGHT} -AppVerName={#VERSION_INSTALL} -AppPublisher={#MyAppPublisher} -AppPublisherURL={#MyAppURL} -AppSupportURL={#MyAppURL} -AppUpdatesURL={#MyAppURL} - -;non portable mode if ever wanted FLIPFLAP -;DefaultDirName={pf}\{#ID_INSTALL}-{#VERSION_INSTALL}{#RELEASELEVEL} -;non portable mode -; -;2018-12-10: making 64 art of the install path (7zip similarity) -;DefaultDirName={src}\{#ID_INSTALL}-{#VERSION_INSTALL}{#RELEASELEVEL} -DefaultDirName={src}\{#ID_INSTALL}{#ARCH}-{#VERSION_INSTALL}{#RELEASELEVEL} - -DefaultGroupName={#ID} -DisableProgramGroupPage=yes -LicenseFile={#PORTABLE_DIR}\license.txt -;InfoBeforeFile={#PORTABLE_DIR}\licence_info.txt -;OutputDir={#MyBinaryOutputDir} -OutputDir={#DISTDIR}\.. -OutputBaseFilename={#ID}{#ARCH}-{#VERSION}{#RELEASELEVEL} -SetupIconFile={#PORTABLE_DIR}\icons\install.ico - -; When set to none, Setup will only run with administrative privileges if it -; was started by a member of the Administrators group. -; On pre vista: will *not* run with administrative privileges -PrivilegesRequired = none - -; If True, Setup will refresh env/associations in explorer after install -ChangesEnvironment = no -ChangesAssociations = no - -; decrepited WizardImageBackColor=$d28b26 -WizardImageStretch=no -WizardImageFile={#PORTABLE_DIR}\images\installer_logo.bmp -WizardSmallImageFile={#PORTABLE_DIR}\images\installer_logo.bmp - -AllowNoIcons = yes - -Compression = lzma2 -SolidCompression = yes -;LZMAUseSeparateProcess = yes -;LZMANumBlockThreads = 2 - -; 2048 = normal; 8192=max ; 4096=ideal -LZMADictionarySize = 4096 - -;LZMANumFastBytes = 273 - -[Tasks] -; if ever wanted FLIPFLAP -;Name: portablemode; Description: "Portable Mode" - - -[Languages] -Name: "english"; MessagesFile: "compiler:Default.isl" - -[Files] -Source: {#DISTDIR}\*; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs -; NOTE: Don't use "Flags: ignoreversion" on any shared system files - diff --git a/portable/launcher_basic.nsi b/portable/launcher_basic.nsi deleted file mode 100644 index cb1670b3..00000000 --- a/portable/launcher_basic.nsi +++ /dev/null @@ -1,44 +0,0 @@ -/* WinPython launcher template script -Copyright 2012 Pierre Raybaut -Licensed under the terms of the MIT License -(see winpython/__init__.py for details) -*/ -;================================================================ -; These lines are automatically filled when winpython/make.py creates launchers: -!addincludedir "" -!define COMMAND "" -!define PARAMETERS "" -!define WORKDIR "" -Icon "" -OutFile "" -;================================================================ -# Standard NSIS plugins -!include "WordFunc.nsh" -!include "FileFunc.nsh" - -SilentInstall silent -AutoCloseWindow true -ShowInstDetails nevershow -RequestExecutionLevel user - -Section "" -Call Execute -SectionEnd - -Function Execute -;Set working Directory =========================== -StrCmp ${WORKDIR} "" 0 workdir -System::Call "kernel32::GetCurrentDirectory(i ${NSIS_MAX_STRLEN}, t .r0)" -SetOutPath $0 -Goto end_workdir -workdir: -SetOutPath "${WORKDIR}" -end_workdir: -;Get Command line parameters ===================== -${GetParameters} $R1 -StrCmp "${PARAMETERS}" "" end_param 0 -StrCpy $R1 "${PARAMETERS} $R1" -end_param: -;===== Execution ================================= -Exec '"${COMMAND}" $R1' -FunctionEnd \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 04c44295..cfae051f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,13 +3,15 @@ requires = ["flit_core"] build-backend = "flit_core.buildapi" [project] -name = "winpython" +name = "wppm" authors = [ {name = "Pierre Raybaut"}, {name = "stonebig"}, ] -dependencies = [] -requires-python = ">=3.6" +dependencies = [ + "packaging", +] +requires-python = ">=3.10" readme = "README.rst" license = {file = "LICENSE"} classifiers=[ @@ -25,13 +27,12 @@ classifiers=[ 'Topic :: Software Development :: Widget Sets', ] dynamic = ["version",] -description="WinPython distribution tools, including WPPM" -keywords = ["PySide6", "PyQt6", "PyQt5", "PySide2"] +description="WinPython Package Management" +keywords = ["Portable","Windows"] [project.urls] Documentation = "https://winpython.github.io/" Source = "https://github.com/winpython/winpython" [project.scripts] -wpcp = "winpython.controlpanel:main" -wppm = "winpython.wppm:main" +wppm = "wppm.wppm:main" diff --git a/requirements64_slim.txt b/requirements64_slim.txt new file mode 100644 index 00000000..8282192e --- /dev/null +++ b/requirements64_slim.txt @@ -0,0 +1,524 @@ +# 313 +# ortool 290MO UNCOMPRESSED +# re-add pandoc … 618Mo? +# 698 Mo after remoal of moviepy/imageio-ffmpeg +# 714 Mo after removal of maturin and WASM Klein +# 725Mo before removal of: maturin 7 Mo, WASM KLEIN example +#2024-09-22: swifter removed + +#2024-12-28 add pydantic_ai + +# the essential +wheel +pywin32 +build + + +# compilers +cython +pycparser +cffi + +# numeric stones +numpy + +scipy +sympy +Pillow +matplotlib + +pandas + +# sql - data + +pyodbc + + +SQLAlchemy +sqlparse +sqlite_bro +baresql +mysql_connector_python +pg8000 +ipython_sql + +XlsxWriter + +pymongo +redis + +# high numeric +#numexpr 2024-12-25: not worth it + +#h5py 2024-12-25: not worth it + +cytoolz +#netCDF4 2024-12-25: not worth it +xarray + +#Pulp 2024-12-25: not worth it + +scikit_learn +scikit_image + + + +# gui +jupyter +ipython + +spyder + +# seaborn wants patsy and statsmodels for linear modeling +seaborn +patsy +statsmodels + +holoviews +mpld3 + +# web +beautifulsoup4 + +lxml +html5lib +requests + + +simplejson + +flask + +# dev complements + +pytest +jedi +pep8 +pyflakes + +pylint + +numpydoc + +twine + +# other +networkx +nltk + +# PyAudio 2024-12-25: not worth it, no visibility of source +sounddevice + +pyserial + +#pdf + +reportlab + + +# Pierre Raybaut Stack (PyQt5 only for now) +plotpy +PythonQwt +guidata + +# for dask + +lmfit + +# Qt + +pyqtgraph + + +# yet other +julia + +# remember me why +certifi +click + + + +sphinx_rtd_theme +Sphinx +greenlet +rx + +# wheelhouse-uploader apache-libcloud (is heavy) + +Markdown + +prompt-toolkit +ptpython + +geopy + +wordcloud + + + +pycodestyle + +altair +nbconvert +pypandoc + + + + +fuzzywuzzy +#scikit_fuzzy +imageio + +#xlwings 2024-12-25 not worth it + +# parallelize (and replace celery) +joblib +#dask[complete] contains irrelevant pyarrow-hotfix +dask[array,dataframe,distributed,diagnostics] + +# dask 'bag' and 'delayed' +cloudpickle +toolz +partd + +brotli + + +pybind11 + +#SLIM_2024 pygame +plotnine + + + +#SLIM_2024 moviepy + + +#no download streamz + + +# Tensorflow_world +###edward +###Keras +###keras_vis +###Tensorflow_cpu +###tensorflow_probability + +##keras-tuner + +# pytorch eco-system +#Torch +#torchvision +#torchaudio +#botorch +#lightning +#kornia +#transformers[torch] +#accelerate +#fidle (tensorboard-2.15.1 wants still protobuf<4.24 , problem with ortools) +## waiting for torch: +##fastai +##spacy + +# if we drop torch: jaxlib ml-dtypes numpy scipy jax opt-einsum +#jax[cpu] + +terminado + +# pywinpty added due link removed from terminado for PyPy3 +pywinpty + +Send2Trash + +vega_datasets + +regex + +#loky + +hvplot + +#clrmagic 2024-12-25 not Worth it +#pythonnet 2024-12-25 not Worth it + +cvxopt + +numba +##pyarrow + + +cvxpy +mypy + +datashader + +mlxtend + +##jupyterlab_rise + +simpy + + +trio + +#dead2025-07-13: imbalanced-learn then rewaken ? +imbalanced-learn + +tzlocal +astropy + +panel + +hypothesis +geopandas + +mercantile + +#rasterio 2024-12-25 not jangmin and maxsecure + +quantecon + +kiwisolver + +# automate notebooks 2019-04-26 +papermill + +autopep8 +black + +## winrt not yet + + +# python_language_server no more +python_lsp_server +pexpect + + +#swagger flask (still no asyncio choice) +#flask_accepts +#flaskerize +# flask_RESTplus ... shall be now flask-restx +quart +datasette +hypercorn + +#complementing asgi stack +#2023-03-19 no more with sqlalchemy2.0 +##databases[sqlite] + +## ibis-framework no big life + +folium +plotly + + +umap-learn +#SLIM_2024 virtualenv +pympler +## pipdeptree replaced par wppm + +##nlopt + +#2025-02-15 flask-sqlalchemy +#2025-02-15 flask-session +#2025-02-15 flask-Mail +python-dotenv +httpie +asgiref + +#SLIM_2024 importlib_metadata + + +##jupyterlab things +jupyterlab +widgetsnbextension + +##jupyterlab_launcher +jupyter_bokeh +#2023-05-21 too fragile: dask_labextension +#SLIM_2024 pydeck + +## jupyterlab3 only +jupyterlab-widgets + +## 2020-09-27 jupyterlab2 only +ipympl +ipyleaflet + +ipycanvas + +#SLIM_2024 wasmer +#SLIM_2024 wasmer_compiler_cranelift +#SLIM_2024 wasmer_compiler_singlepass + +fastapi + + +datasette_graphql +sqlite_utils +aiosqlite + + +## onnxruntime + +##sklearn-contrib-lightning +openpyxl +zstandard + + +pynndescent + + +flit +## 2023-10-15 (too constraining) poetry +## so moves to hatch +## buth hatch wants now uv.. a bit too much +hatchling + +#ecos 2024-12-25 + +##csvs_to_sqlite +datasette_graphql +sqlite_utils + +maturin + +orjson + + +#2023-08-22 fuzz replacements +rapidfuzz + +streamlit +streamlit-bokeh + +## 2024-09-08 until plotly at least updates its lumnio thing https://github.com/plotly/plotly.py/pull/4685 +# dash +alembic + + +#webapps example needs +Django +#channels + + +## badly formed uvicorn[standard] +uvicorn +python-multipart +deap + +polars + +##timseries bis + + +# for SSRS +requests_ntlm +missingno + +##xgboost +# lightgbm ? +duckdb + + +# for flask +waitress + +#2023-10-08 soon:jupyterlab-lsp + +array-api-compat + + +mpmath + +openai + + +#azure +azure-identity +azure-cosmos +azure-core + +## build + +# write & read QRcode +python-barcode +qrcode +#not compatible with numpy-2.3 2025-09-14: opencv-python + +#llm follow-up +# llm +#risk llm_gpt4all +# llm_llama_cpp +# llm_markov +# llm-python +huggingface_hub + + +#course of langchain https://learn.deeplearning.ai/langchain-chat-with-your-data +pypdf +yt_dlp +pydub + + +# new friends of panel (load psygnal, a qt-like signaling) +anywidget + +keras + + + +# pyomo becomes a frequent wrapper nowodays + +langchain +pyomo +#NUMPY2_WAIT highspy +#pymoo 2024-12-25 not well maintained + +clarabel +#SLIM_2024 ortools + +#waiting cvxpy +scs +optuna + + +#pyarrow complement +adbc_driver_manager +#adbc_driver_sqlite +#backport optional importlib_resources + +#cartopy 2024-12-26 use geopandas more popular (that include gdal via pyogrio) + +#2024-12-26 agent ai things +pydantic-ai-slim[a2a,anthropic,cli,cohere,evals,google,groq,mcp,mistral,openai,vertexai] +skrub +termcolor +tiktoken + +# from Microsoft own distro +thefuzz +tabulate +squarify +PyWavelets +prince +faker + +pyusb + +sv-ttk +typer + +onnxruntime +markitdown +pyvisa + +soundfile +psycopg2 +pipdeptree + +ipykernel!=7.0.0,!=7.0.1 + +foundry-local-sdk + diff --git a/requirements_mkl.txt b/requirements_mkl.txt deleted file mode 100644 index a2a94317..00000000 --- a/requirements_mkl.txt +++ /dev/null @@ -1,370 +0,0 @@ -# the essential -wheel -pywin32 - -# compilers -cython -pycparser -cffi -numba -maturin - -# done in pre-step -## numpy -## scipy -## numexpr -## mkl_service - -# pytorch eco-system -#Torch -#torchvision -#torchaudio -#botorch -#fastai -#dask_ml - -#LLM huggingface -#openai -#transformers[torch] -#accelerate - - -# complementary tools -mypy -black -pep8 -twine -pytest -coverage -hypothesis -pybind11 -flit -poetry -virtualenv -pympler - -sqlite_bro -baresql -idlex - -# scientific -matplotlib -sympy - -scikit_learn -scikit_image - -SQLAlchemy -alembic - -#statistic -statsmodels -pmdarima -pymc - -# to become skrub -dirty_cat - -pandas -# pandas-datareader -xarray - -#pdf -pdfrw -reportlab - -#git -gitdb -gitpython - -# Jupyter -jupyter -# jupyterlab, ipython -papermill -ipython_sql -ipympl -ipyleaflet -ipycanvas -#not popular jupyterlab_rise - -jedi - -# gui -seaborn -altair -plotnine -plotly -bokeh -datashader -holoviews -mpld3 -networkx -bqplot -imageio -imageio_ffmpeg -hvplot -wordcloud -panel - - -# gui geographic -geopandas -geopy -pydeck -# geoviews has no success -gdal - -#solvers -pycosat -ecos -qpsolvers -cvxpy -pulp - -# Qt5 - -# QT -spyder -pyzo -pyqtgraph -qtconsole -guiqwt -PythonQwt -guidata -formlayout -folium - -# web -Flask -Django -python_dotenv -uvicorn -beautifulsoup4 -regex -lxml -html5lib -requests -datasette -yarl -xmltodict -pystache -pysocks -pyjwt -mako - -# parallelize (and replace celery) -joblib -dask[complete] -dask_image -cloudpickle -fastparquet - -# write & read QRcode -python-barcode -qrcode -opencv-python - -# ports -pyodbc -pyserial -# pywinusb to replace per puysb+libusb-package ? -pywinusb - -#rust packages -duckdb -polars - -# excel -xlsxwriter -openpyxl - -# connect to other langages -julia -pythonnet -clrmagic - -ptpython - -# async -trio -trio-asyncio - -# large lange models -llm -llm_gpt4all -llm_llama_cpp -llm_markov -huggingface_hub - -imbalanced-learn - - -fastapi - - -# needs recent wheel for altai5 -#great_expectations - -datasette_graphql -sqlite_utils -db.py -aiosqlite - - -# compression -zstandard - -#2023-08-22 fuzz replacements -rapidfuzz - -# dashboards -streamlit -dash - -#popular 2023-08-23 -greenlet -Markdown -docopt -PyOpenGL -Sphinx -sphinx_rtd_theme -rx -bottleneck -pystache -pypandoc -scikit-optimize -fuzzywuzzy -loky -astropy -snuggs -rasterio -flask-session -python-multipart -filterpy -requests_ntlm - -swifter -emcee -zarr -pyflux -snakeviz -nbdime -simplegeneric -ipydatagrid - -simpy -supersmoother -mpl_scatter_density -ppci -nltk -simplejson -sounddevice -pygame -moviepy -altair-transform -altair_data_server -pygad -xgboost -xlwings -cvxopt -mpmath -#azure -azure-identity -azure-cosmos -azure-core -sspyrs - -# sql - data -adodbapi - - -sqlparse - -mysql_connector_python -pg8000 - -pymongo -redis - -#hdf files -h5py -tables -netCDF4 -# not_popular python-hdf4 - -cytoolz - -blosc - -brewer2mpl - -PyAudio - -lmfit - -# less popular cartographic -mercantile -pyepsg - -#preparing parquet -python_snappy -brotli - -feather_format - -jupyter_sphinx - -streamz - -vega_datasets - - -gmpy2 - -mlxtend - -quantecon - -quart - -hypercorn - -umap-learn -flask-sqlalchemy - -nlopt - -httpie -flask-Mail - -lz4 - -jupyter_bokeh - -pydeck - -wasmer -wasmer_compiler_cranelift -wasmer_compiler_singlepass - -nbval - -## onnxruntime - -pynndescent - -quadprog - -orjson - -jupyter_packaging - -deap - -tbats - -missingno - -# for flask -waitress - diff --git a/run_complement_newbuild.bat b/run_complement_newbuild.bat deleted file mode 100644 index dd079a8c..00000000 --- a/run_complement_newbuild.bat +++ /dev/null @@ -1,131 +0,0 @@ -rem first line check -echo keep me in ansi =utf-8 without BOM (notepad plus plus or win10 screwing up for compatibility) - -rem 2021-05-23: use "%PYTHON%" for the executable instead of "%WINPYDIR%\python.exe" -rem 2022-10-19 patch cpython bug https://github.com/winpython/winpython/issues/1121 - -rem if build error, launch "WinPython Command Prompt.exe" dos ico, then try manual install of requirements.txt -rem that is: pip install --pre --no-index --trusted-host=None --find-links=C:\WinP\packages.srcreq -c C:\WinP\constraints.txt -r C:\WinP\bd39\requirements_test.txt Qt5_requirements64.txt Cod_requirements64.txt -rem python -m pip freeze>C:\WinP\bd39\req_test150.txt between intermediate steps -rem -rem ( drag & drop "requirements.txt" file in the dos window a the end of the line, to get full path) -rem then drag & drop "run_complement_newbuild.bat" file in the dos window and launch it - -@echo off -rem %1 is WINPYDIRBASE being prepared, (names winpydir of python build batch) (like "...bd37\buPyPy\WPy64-37100b2") -rem this .bat is placed at root (buildir34, buildir34\FlavorJulia, ...) -set origin=%~dp0 -set new_winpydir=%1 - -echo new_winpydir= ********%new_winpydir%*********************************************************** -cd /d %new_winpydir% - -call scripts\env.bat -@echo off - -rem * ========================== -echo * When Python has no mingwpy -rem * ========================== -if not exist "%WINPYDIR%\Lib\site-packages\mingwpy" set pydistutils_cfg=%WINPYDIR%\..\settings\pydistutils.cfg -if not exist "%WINPYDIR%\Lib\site-packages\mingwpy" echo [config]>%pydistutils_cfg% - - - -rem * ================= -echo finish install seaborn iris example -rem * ================= -if exist "%WINPYDIR%\Lib\site-packages\seaborn" "%PYTHON%" -c "import seaborn as sns;sns.set();sns.load_dataset('iris')" - - -rem ** Active patchs************************************************************************************************* - - - -rem * =========================== -rem 2022-10-19 patch cpython bug https://github.com/winpython/winpython/issues/1121 -rem * =========================== -set qt56p=%WINPYDIR%\Lib\idlelib\macosx.py -if exist "%qt56p%" ( - "%PYTHON%" -c "from winpython.utils import patch_sourcefile;patch_sourcefile(r'%WINPYDIR%\Lib\idlelib\macosx.py', 'from test.support ', '#stonebig patch cpython/pull/98313/files: from test.support' )" - echo "DID I patch numba%??" -) else ( - echo "I DIDN'T patch of numba !" -) - - -rem ** Example of live file replacement (not active)*********************************************************************************************** - -rem * =========================== -echo 2021-04-17 patch jupyter_lsp-1.1.4 -rem see https://github.com/krassowski/jupyterlab-lsp/pull/580/files -rem * =========================== - -rem in DOS, the variable must be set befor the parenthesis block.... -set this_source='%WINPYDIR%\Lib\site-packages\jupyter_lsp\virtual_documents_shadow.py' -if exist "%WINPYDIR%\Lib\site-packages\jupyter_lsp-1.1.4.dist-info" ( - echo "**%this_source%**" - "%PYTHON%" -c "from winpython.utils import patch_sourcefile;patch_sourcefile(r%this_source%, 'read_text()', 'read_text(encoding='+chr(39)+'utf-8'+chr(39)+')' )" - "%PYTHON%" -c "from winpython.utils import patch_sourcefile;patch_sourcefile(r%this_source%, 'join(self.lines))', 'join(self.lines), encoding='+chr(39)+'utf-8'+chr(39)+')' )" -) - -rem * =========================== -rem 2020-05-15 patch jedi-0.17.0 -rem * =========================== - -if exist "%WINPYDIR%\Lib\site-packages\jedi-0.17.0.dist-info" copy/Y "C:\WinP\tempo_fixes\Jedi-0.17.0\api\__init__.py" "%WINPYDIR%\Lib\site-packages\Jedi-0.17.0\api\__init__.py" - -rem * ================= - - -echo JUPYTERLAB_DIR=%JUPYTERLAB_DIR% default is ~/.jupyter/lab -echo JUPYTERLAB_SETTINGS_DIR=%JUPYTERLAB_SETTINGS_DIR% , default is ~/.jupyter/lab/user-settings/ -echo JUPYTERLAB_WORKSPACES_DIR=%JUPYTERLAB_WORKSPACES_DIR% , default is ~/.jupyter/lab/workspaces/ - -"%WINPYDIR%\Scripts\jupyter.exe" lab path - - -rem jupyter labextension update --all (will rebuild if needed) -rem 2020-12-31 tweaks -rem see https://jupyter.readthedocs.io/en/latest/use/jupyter-directories.html -if exist "%WINPYDIR%\Lib\site-packages\jupyterlab" ( -"%WINPYDIR%\Scripts\jupyter.exe" labextension list -"%WINPYDIR%\Scripts\jupyter.exe" --paths -) - -REM 2023-10-15: 'nbextension' was Jupyter3 days -rem if exist "%WINPYDIR%\Lib\site-packages\notebook" "%WINPYDIR%\Scripts\jupyter.exe" nbextension list - - -rem * =================== -echo clear jupyterlab staging (2018-03-09) -rem * =================== -if exist "%WINPYDIR%\share\jupyter\lab\staging" rmdir /S /Q "%WINPYDIR%\share\jupyter\lab\staging" -rem if exist "%WINPYDIR%\Lib\site-packages\jupyterlab" "%WINPYDIR%\Scripts\jupyter.exe" lab clean - - -echo 2019-10-22 Spyder tweaks moved at the end as suspicion of problem creating (on Python-3.8) -rem * ============================ -echo .spyder3\temp.py suspected of creating issue east of Italia -echo see https://groups.google.com/forum/#!topic/spyderlib/dH5VXlTc30s -rem * ============================ -if exist "%WINPYDIR%\..\settings\.spyder-py3\temp.py" del "%WINPYDIR%\..\settings\.spyder-py3\temp.py" - -rem * ============================ -rem 2023-02-12: paching pip-23.0.0 pip\_vend_r\rich patch cpython bug https://github.com/pypa/pip/issues/11798 -rem * ============================ -if exist "%WINPYDIR%\Lib\site-packages\pip-23.0.dist-info" ( - echo "coucou Pip-23.0 crashing _vendor/rich" - copy/Y "C:\WinP\tempo_fixes\pip\_vendor\rich\_win32_console.py" "%WINPYDIR%\site-packages\pip\_vendor\rich\_win32_console.py" -) - -rem * ==================== -echo summary 20202-04-11 -rem * ==================== -pip check - - -@echo on -goto the_end - - -:the_end \ No newline at end of file diff --git a/test.py b/test.py deleted file mode 100644 index 8a47ca75..00000000 --- a/test.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -Created on Thu Oct 04 11:02:40 2012 - -@author: Pierre Raybaut -""" - -import sys -import os -from pathlib import Path -import re - -# Local imports -from winpython import utils, wppm - - -def test_python_packages(pyver): - """Check if all Python packages are supported by WinPython""" - basedir = utils.get_basedir(pyver) - for suffix in ('src', 'win32', 'win-amd64'): - dirname = str(Path(basedir) / f'packages.{suffix}') - for name in os.listdir(dirname): - if (Path(dirname) / name).is_file() \ - and not re.match(r'python-([0-9\.]*)(\.amd64)?\.msi', name): - try: - print(wppm.Package(name)) - print('') - except: - print('failed: %s' % name, file=sys.stderr) - - -if __name__ == '__main__': - test_python_packages('2.7') - test_python_packages('3.3') \ No newline at end of file diff --git a/winpython/__init__.py b/winpython/__init__.py index 037814ed..e69de29b 100644 --- a/winpython/__init__.py +++ b/winpython/__init__.py @@ -1,33 +0,0 @@ -# -*- coding: utf-8 -*- -""" -WinPython License Agreement (MIT License) ------------------------------------------ - -Copyright (c) 2012-2013 Pierre Raybaut -Copyright (c) 2014-2023+ The Winpython development team https://github.com/winpython/ - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. -""" - -__version__ = '7.5.20240410' -__license__ = __doc__ -__project_url__ = 'http://winpython.github.io/' diff --git a/winpython/__main__.py b/winpython/__main__.py new file mode 100644 index 00000000..0dd8efd8 --- /dev/null +++ b/winpython/__main__.py @@ -0,0 +1,6 @@ +import os +import sys +if __name__ == "__main__": + from winpython import make + + sys.exit(make.main()) \ No newline at end of file diff --git a/winpython/_vendor/qtpy/Qsci.py b/winpython/_vendor/qtpy/Qsci.py deleted file mode 100644 index 18d1ef06..00000000 --- a/winpython/_vendor/qtpy/Qsci.py +++ /dev/null @@ -1,36 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qsci classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInstalledError -) - -if PYQT5: - try: - from PyQt5.Qsci import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qsci', missing_package='QScintilla' - ) from error -elif PYQT6: - try: - from PyQt6.Qsci import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qsci', missing_package='PyQt6-QScintilla' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='Qsci') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='Qsci') diff --git a/winpython/_vendor/qtpy/Qt3DAnimation.py b/winpython/_vendor/qtpy/Qt3DAnimation.py deleted file mode 100644 index 4befdd92..00000000 --- a/winpython/_vendor/qtpy/Qt3DAnimation.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DAnimation classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DAnimation import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DAnimation', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DAnimation import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DAnimation', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DAnimation as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DAnimation): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DAnimation as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DAnimation): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/Qt3DCore.py b/winpython/_vendor/qtpy/Qt3DCore.py deleted file mode 100644 index 007ef876..00000000 --- a/winpython/_vendor/qtpy/Qt3DCore.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DCore classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DCore', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DCore', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DCore as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DCore): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DCore as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DCore): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/Qt3DExtras.py b/winpython/_vendor/qtpy/Qt3DExtras.py deleted file mode 100644 index 81b82c16..00000000 --- a/winpython/_vendor/qtpy/Qt3DExtras.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DExtras classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DExtras import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DExtras', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DExtras import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DExtras', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DExtras as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DExtras): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DExtras as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DExtras): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/Qt3DInput.py b/winpython/_vendor/qtpy/Qt3DInput.py deleted file mode 100644 index 5a706be5..00000000 --- a/winpython/_vendor/qtpy/Qt3DInput.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DInput classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DInput import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DInput', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DInput import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DInput', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DInput as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DInput): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DInput as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DInput): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/Qt3DLogic.py b/winpython/_vendor/qtpy/Qt3DLogic.py deleted file mode 100644 index 59077c06..00000000 --- a/winpython/_vendor/qtpy/Qt3DLogic.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DLogic classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DLogic import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DLogic', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DLogic import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DLogic', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DLogic as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DLogic): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DLogic as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DLogic): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/Qt3DRender.py b/winpython/_vendor/qtpy/Qt3DRender.py deleted file mode 100644 index d7bf9f00..00000000 --- a/winpython/_vendor/qtpy/Qt3DRender.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DRender classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DRender import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DRender', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DRender import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DRender', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DRender as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DRender): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DRender as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DRender): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/QtAxContainer.py b/winpython/_vendor/qtpy/QtAxContainer.py deleted file mode 100644 index 801491d6..00000000 --- a/winpython/_vendor/qtpy/QtAxContainer.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtAxContainer classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtAxContainer') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtAxContainer') -elif PYSIDE2: - from PySide2.QtAxContainer import * -elif PYSIDE6: - from PySide6.QtAxContainer import * diff --git a/winpython/_vendor/qtpy/QtBluetooth.py b/winpython/_vendor/qtpy/QtBluetooth.py deleted file mode 100644 index 2f649743..00000000 --- a/winpython/_vendor/qtpy/QtBluetooth.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtBluetooth classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtBluetooth import * -elif PYQT6: - from PyQt6.QtBluetooth import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtBluetooth') -elif PYSIDE6: - from PySide6.QtBluetooth import * diff --git a/winpython/_vendor/qtpy/QtCharts.py b/winpython/_vendor/qtpy/QtCharts.py deleted file mode 100644 index 568d9c99..00000000 --- a/winpython/_vendor/qtpy/QtCharts.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2019- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtChart classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtChart import * - from PyQt5 import QtChart as QtCharts - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtCharts', missing_package='PyQtChart' - ) from error -elif PYQT6: - try: - from PyQt6.QtCharts import * - from PyQt6 import QtCharts - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtCharts', missing_package='PyQt6-Charts' - ) from error -elif PYSIDE2: - from PySide2.QtCharts import * - - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.QtCharts as __temp - import inspect - - for __name in inspect.getmembers(__temp.QtCharts): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - from PySide6.QtCharts import * - from PySide6 import QtCharts diff --git a/winpython/_vendor/qtpy/QtConcurrent.py b/winpython/_vendor/qtpy/QtConcurrent.py deleted file mode 100644 index ca14d42e..00000000 --- a/winpython/_vendor/qtpy/QtConcurrent.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtConcurrent classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtConcurrent') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtConcurrent') -elif PYSIDE2: - from PySide2.QtConcurrent import * -elif PYSIDE6: - from PySide6.QtConcurrent import * diff --git a/winpython/_vendor/qtpy/QtCore.py b/winpython/_vendor/qtpy/QtCore.py deleted file mode 100644 index d87c4278..00000000 --- a/winpython/_vendor/qtpy/QtCore.py +++ /dev/null @@ -1,123 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtCore classes and functions.""" -from typing import TYPE_CHECKING - -from . import PYQT6, PYQT5, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtCore import * - from PyQt5.QtCore import pyqtSignal as Signal - from PyQt5.QtCore import pyqtBoundSignal as SignalInstance - from PyQt5.QtCore import pyqtSlot as Slot - from PyQt5.QtCore import pyqtProperty as Property - from PyQt5.QtCore import QT_VERSION_STR as __version__ - - # For issue #153 and updated for issue #305 - from PyQt5.QtCore import QDate, QDateTime, QTime - QDate.toPython = lambda self, *args, **kwargs: self.toPyDate(*args, **kwargs) - QDateTime.toPython = lambda self, *args, **kwargs: self.toPyDateTime(*args, **kwargs) - QTime.toPython = lambda self, *args, **kwargs: self.toPyTime(*args, **kwargs) - - # Map missing methods on PyQt5 5.12 - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - - # Those are imported from `import *` - del pyqtSignal, pyqtBoundSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR - -elif PYQT6: - from PyQt6 import QtCore - from PyQt6.QtCore import * - from PyQt6.QtCore import pyqtSignal as Signal - from PyQt6.QtCore import pyqtBoundSignal as SignalInstance - from PyQt6.QtCore import pyqtSlot as Slot - from PyQt6.QtCore import pyqtProperty as Property - from PyQt6.QtCore import QT_VERSION_STR as __version__ - - # For issue #153 and updated for issue #305 - from PyQt6.QtCore import QDate, QDateTime, QTime - QDate.toPython = lambda self, *args, **kwargs: self.toPyDate(*args, **kwargs) - QDateTime.toPython = lambda self, *args, **kwargs: self.toPyDateTime(*args, **kwargs) - QTime.toPython = lambda self, *args, **kwargs: self.toPyTime(*args, **kwargs) - - # For issue #311 - # Seems like there is an error with sip. Without first - # trying to import `PyQt6.QtGui.Qt`, some functions like - # `PyQt6.QtCore.Qt.mightBeRichText` are missing. - if not TYPE_CHECKING: - try: - from PyQt6.QtGui import Qt - except ImportError: - pass - - # Map missing methods - QCoreApplication.exec_ = QCoreApplication.exec - QEventLoop.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QThread.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - - QLibraryInfo.location = QLibraryInfo.path - - # Those are imported from `import *` - del pyqtSignal, pyqtBoundSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR - - # Allow unscoped access for enums inside the QtCore module - from .enums_compat import promote_enums - promote_enums(QtCore) - del QtCore - - # Alias deprecated ItemDataRole enum values removed in Qt6 - Qt.BackgroundColorRole = Qt.ItemDataRole.BackgroundColorRole = Qt.BackgroundRole - Qt.TextColorRole = Qt.ItemDataRole.TextColorRole = Qt.ForegroundRole - # Alias for MiddleButton removed in PyQt6 but available in PyQt5, PySide2 and PySide6 - Qt.MidButton = Qt.MiddleButton - -elif PYSIDE2: - from PySide2.QtCore import * - - try: # may be limited to PySide-5.11a1 only - from PySide2.QtGui import QStringListModel - except Exception: - pass - - import PySide2.QtCore - __version__ = PySide2.QtCore.__version__ - - # Missing QtGui utility functions on Qt - if getattr(Qt, 'mightBeRichText', None) is None: - try: - from PySide2.QtGui import Qt as guiQt - Qt.mightBeRichText = guiQt.mightBeRichText - del guiQt - except ImportError: - # Fails with PySide2 5.12.0 - pass - -elif PYSIDE6: - from PySide6.QtCore import * - import PySide6.QtCore - __version__ = PySide6.QtCore.__version__ - - # Missing QtGui utility functions on Qt - if getattr(Qt, 'mightBeRichText', None) is None: - from PySide6.QtGui import Qt as guiQt - Qt.mightBeRichText = guiQt.mightBeRichText - del guiQt - - # Alias deprecated ItemDataRole enum values removed in Qt6 - Qt.BackgroundColorRole = Qt.ItemDataRole.BackgroundColorRole = Qt.BackgroundRole - Qt.TextColorRole = Qt.ItemDataRole.TextColorRole = Qt.ForegroundRole - Qt.MidButton = Qt.MiddleButton - - # Map DeprecationWarning methods - QCoreApplication.exec_ = QCoreApplication.exec - QEventLoop.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QThread.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QLibraryInfo.location = QLibraryInfo.path diff --git a/winpython/_vendor/qtpy/QtDBus.py b/winpython/_vendor/qtpy/QtDBus.py deleted file mode 100644 index 6d479fa5..00000000 --- a/winpython/_vendor/qtpy/QtDBus.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDBus classes and functions.""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInOSError, -) - -if PYQT5: - from PyQt5.QtDBus import * -elif PYQT6: - from PyQt6.QtDBus import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtDBus') -elif PYSIDE6: - if sys.platform != 'win32': - from PySide6.QtDBus import * - else: - raise QtModuleNotInOSError(name='QtDBus') diff --git a/winpython/_vendor/qtpy/QtDatavisualization.py b/winpython/_vendor/qtpy/QtDatavisualization.py deleted file mode 100644 index 692430f1..00000000 --- a/winpython/_vendor/qtpy/QtDatavisualization.py +++ /dev/null @@ -1,41 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDataVisualization classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtDataVisualization import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtDataVisualization', missing_package='PyQtDataVisualization' - ) from error -elif PYQT6: - try: - from PyQt6.QtDataVisualization import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtDataVisualization', - missing_package='PyQt6-DataVisualization', - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.QtDataVisualization as __temp - import inspect - - for __name in inspect.getmembers(__temp.QtDataVisualization): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - from PySide6.QtDataVisualization import * diff --git a/winpython/_vendor/qtpy/QtDesigner.py b/winpython/_vendor/qtpy/QtDesigner.py deleted file mode 100644 index 969d8480..00000000 --- a/winpython/_vendor/qtpy/QtDesigner.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDesigner classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtDesigner import * -elif PYQT6: - from PyQt6.QtDesigner import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtDesigner') -elif PYSIDE6: - from PySide6.QtDesigner import * diff --git a/winpython/_vendor/qtpy/QtGui.py b/winpython/_vendor/qtpy/QtGui.py deleted file mode 100644 index 662b84cd..00000000 --- a/winpython/_vendor/qtpy/QtGui.py +++ /dev/null @@ -1,74 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtGui classes and functions.""" - -from . import PYQT6, PYQT5, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtGui import * -elif PYQT6: - from PyQt6 import QtGui - from PyQt6.QtGui import * - from PyQt6.QtOpenGL import * - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - QFontMetricsF.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - - # Map missing/renamed methods - QDrag.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QGuiApplication.exec_ = QGuiApplication.exec - QTextDocument.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - - # Allow unscoped access for enums inside the QtGui module - from .enums_compat import promote_enums - promote_enums(QtGui) - del QtGui -elif PYSIDE2: - from PySide2.QtGui import * - if hasattr(QFontMetrics, 'horizontalAdvance'): - # Needed to prevent raising a DeprecationWarning when using QFontMetrics.width - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtGui import * - from PySide6.QtOpenGL import * - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - QFontMetricsF.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - - # Map DeprecationWarning methods - QDrag.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QGuiApplication.exec_ = QGuiApplication.exec - -if PYSIDE2 or PYSIDE6: - # PySide{2,6} do not accept the `mode` keyword argument in - # QTextCursor.movePosition() even though it is a valid optional argument - # as per C++ API. Fix this by monkeypatching. - # - # Notes: - # - # * The `mode` argument is called `arg__2` in PySide{2,6} as per - # QTextCursor.movePosition.__doc__ and __signature__. Using `arg__2` as - # keyword argument works as intended, so does using a positional - # argument. Tested with PySide2 5.15.0, 5.15.2.1 and 5.15.3 and PySide6 - # 6.3.0; older version, down to PySide 1, are probably affected as well [1]. - # - # * PySide2 5.15.0 and 5.15.2.1 silently ignore invalid keyword arguments, - # i.e. passing the `mode` keyword argument has no effect and doesn’t - # raise an exception. Older versions, down to PySide 1, are probably - # affected as well [1]. At least PySide2 5.15.3 and PySide6 6.3.0 raise an - # exception when `mode` or any other invalid keyword argument is passed. - # - # [1] https://bugreports.qt.io/browse/PYSIDE-185 - movePosition = QTextCursor.movePosition - def movePositionPatched( - self, - operation: QTextCursor.MoveOperation, - mode: QTextCursor.MoveMode = QTextCursor.MoveAnchor, - n: int = 1, - ) -> bool: - return movePosition(self, operation, mode, n) - QTextCursor.movePosition = movePositionPatched diff --git a/winpython/_vendor/qtpy/QtHelp.py b/winpython/_vendor/qtpy/QtHelp.py deleted file mode 100644 index d0e2babb..00000000 --- a/winpython/_vendor/qtpy/QtHelp.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""QtHelp Wrapper.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtHelp import * -elif PYQT6: - from PyQt6.QtHelp import * -elif PYSIDE2: - from PySide2.QtHelp import * -elif PYSIDE6: - from PySide6.QtHelp import * diff --git a/winpython/_vendor/qtpy/QtLocation.py b/winpython/_vendor/qtpy/QtLocation.py deleted file mode 100644 index 1f7132dc..00000000 --- a/winpython/_vendor/qtpy/QtLocation.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtLocation classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtLocation import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtLocation') -elif PYSIDE2: - from PySide2.QtLocation import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtLocation') diff --git a/winpython/_vendor/qtpy/QtMacExtras.py b/winpython/_vendor/qtpy/QtMacExtras.py deleted file mode 100644 index d495c1eb..00000000 --- a/winpython/_vendor/qtpy/QtMacExtras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides classes and functions specific to macOS and iOS operating systems""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'darwin': - if PYQT5: - from PyQt5.QtMacExtras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtMacExtras') - elif PYSIDE2: - from PySide2.QtMacExtras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtMacExtras') -else: - raise QtModuleNotInOSError(name='QtMacExtras') diff --git a/winpython/_vendor/qtpy/QtMultimedia.py b/winpython/_vendor/qtpy/QtMultimedia.py deleted file mode 100644 index 7403e64d..00000000 --- a/winpython/_vendor/qtpy/QtMultimedia.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides low-level multimedia functionality.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtMultimedia import * -elif PYQT6: - from PyQt6.QtMultimedia import * -elif PYSIDE2: - from PySide2.QtMultimedia import * -elif PYSIDE6: - from PySide6.QtMultimedia import * diff --git a/winpython/_vendor/qtpy/QtMultimediaWidgets.py b/winpython/_vendor/qtpy/QtMultimediaWidgets.py deleted file mode 100644 index 69af111a..00000000 --- a/winpython/_vendor/qtpy/QtMultimediaWidgets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtMultimediaWidgets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtMultimediaWidgets import * -elif PYQT6: - from PyQt6.QtMultimediaWidgets import * -elif PYSIDE2: - from PySide2.QtMultimediaWidgets import * -elif PYSIDE6: - from PySide6.QtMultimediaWidgets import * diff --git a/winpython/_vendor/qtpy/QtNetwork.py b/winpython/_vendor/qtpy/QtNetwork.py deleted file mode 100644 index 2c4e5476..00000000 --- a/winpython/_vendor/qtpy/QtNetwork.py +++ /dev/null @@ -1,20 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNetwork classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtNetwork import * -elif PYQT6: - from PyQt6.QtNetwork import * -elif PYSIDE2: - from PySide2.QtNetwork import * -elif PYSIDE6: - from PySide6.QtNetwork import * diff --git a/winpython/_vendor/qtpy/QtNetworkAuth.py b/winpython/_vendor/qtpy/QtNetworkAuth.py deleted file mode 100644 index abf7526e..00000000 --- a/winpython/_vendor/qtpy/QtNetworkAuth.py +++ /dev/null @@ -1,36 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNetworkAuth classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, - QtBindingMissingModuleError, -) - -if PYQT5: - try: - from PyQt5.QtNetworkAuth import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtNetworkAuth', missing_package='PyQtNetworkAuth' - ) from error -elif PYQT6: - try: - from PyQt6.QtNetworkAuth import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtNetworkAuth', missing_package='PyQt6-NetworkAuth' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtNetworkAuth') -elif PYSIDE6: - from PySide6.QtNetworkAuth import * diff --git a/winpython/_vendor/qtpy/QtNfc.py b/winpython/_vendor/qtpy/QtNfc.py deleted file mode 100644 index 38007248..00000000 --- a/winpython/_vendor/qtpy/QtNfc.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNfc classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtNfc import * -elif PYQT6: - from PyQt6.QtNfc import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtNfc') -elif PYSIDE6: - from PySide6.QtNfc import * diff --git a/winpython/_vendor/qtpy/QtOpenGL.py b/winpython/_vendor/qtpy/QtOpenGL.py deleted file mode 100644 index 345853a1..00000000 --- a/winpython/_vendor/qtpy/QtOpenGL.py +++ /dev/null @@ -1,67 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtOpenGL classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtOpenGL import * - from PyQt5.QtGui import ( - QOpenGLBuffer, - QOpenGLFramebufferObject, - QOpenGLFramebufferObjectFormat, - QOpenGLShader, - QOpenGLShaderProgram, - QOpenGLContext, - QOpenGLContextGroup, - QOpenGLDebugLogger, - QOpenGLDebugMessage, - QOpenGLPixelTransferOptions, - QOpenGLTexture, - QOpenGLTextureBlitter, - QOpenGLVersionProfile, - QOpenGLVertexArrayObject, - QOpenGLWindow, - ) - - # These are not present on some architectures such as armhf - try: - from PyQt5.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery - except ImportError: - pass -elif PYQT6: - from PyQt6.QtOpenGL import * - from PyQt6.QtGui import QOpenGLContext, QOpenGLContextGroup -elif PYSIDE6: - from PySide6.QtOpenGL import * - from PySide6.QtGui import QOpenGLContext, QOpenGLContextGroup -elif PYSIDE2: - from PySide2.QtOpenGL import * - from PySide2.QtGui import ( - QOpenGLBuffer, - QOpenGLFramebufferObject, - QOpenGLFramebufferObjectFormat, - QOpenGLShader, - QOpenGLShaderProgram, - QOpenGLContext, - QOpenGLContextGroup, - QOpenGLDebugLogger, - QOpenGLDebugMessage, - QOpenGLPixelTransferOptions, - QOpenGLTexture, - QOpenGLTextureBlitter, - QOpenGLVersionProfile, - QOpenGLVertexArrayObject, - QOpenGLWindow, - ) - - # These are not present on some architectures such as armhf - try: - from PySide2.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery - except ImportError: - pass diff --git a/winpython/_vendor/qtpy/QtOpenGLWidgets.py b/winpython/_vendor/qtpy/QtOpenGLWidgets.py deleted file mode 100644 index fb9fa62a..00000000 --- a/winpython/_vendor/qtpy/QtOpenGLWidgets.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtOpenGLWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtOpenGLWidgets') -elif PYQT6: - from PyQt6.QtOpenGLWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtOpenGLWidgets') -elif PYSIDE6: - from PySide6.QtOpenGLWidgets import * diff --git a/winpython/_vendor/qtpy/QtPdf.py b/winpython/_vendor/qtpy/QtPdf.py deleted file mode 100644 index 3a6796ca..00000000 --- a/winpython/_vendor/qtpy/QtPdf.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPdf classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtPdf') -elif PYQT6: - # Available with version >=6.4.0 - from PyQt6.QtPdf import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPdf') -elif PYSIDE6: - # Available with version >=6.4.0 - from PySide6.QtPdf import * diff --git a/winpython/_vendor/qtpy/QtPdfWidgets.py b/winpython/_vendor/qtpy/QtPdfWidgets.py deleted file mode 100644 index 1b0a2e11..00000000 --- a/winpython/_vendor/qtpy/QtPdfWidgets.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPdfWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtPdfWidgets') -elif PYQT6: - # Available with version >=6.4.0 - from PyQt6.QtPdfWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPdfWidgets') -elif PYSIDE6: - # Available with version >=6.4.0 - from PySide6.QtPdfWidgets import * diff --git a/winpython/_vendor/qtpy/QtPositioning.py b/winpython/_vendor/qtpy/QtPositioning.py deleted file mode 100644 index 5083cee7..00000000 --- a/winpython/_vendor/qtpy/QtPositioning.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright 2020 Antonio Valentino -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPositioning classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtPositioning import * -elif PYQT6: - from PyQt6.QtPositioning import * -elif PYSIDE2: - from PySide2.QtPositioning import * -elif PYSIDE6: - from PySide6.QtPositioning import * diff --git a/winpython/_vendor/qtpy/QtPrintSupport.py b/winpython/_vendor/qtpy/QtPrintSupport.py deleted file mode 100644 index 263747d2..00000000 --- a/winpython/_vendor/qtpy/QtPrintSupport.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPrintSupport classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtPrintSupport import * -elif PYQT6: - from PyQt6.QtPrintSupport import * - QPageSetupDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintPreviewWidget.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtPrintSupport import * - # Map DeprecationWarning methods - QPageSetupDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE2: - from PySide2.QtPrintSupport import * diff --git a/winpython/_vendor/qtpy/QtPurchasing.py b/winpython/_vendor/qtpy/QtPurchasing.py deleted file mode 100644 index 00141a25..00000000 --- a/winpython/_vendor/qtpy/QtPurchasing.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPurchasing classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtPurchasing import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtPurchasing', missing_package='PyQtPurchasing' - ) from error -elif PYQT6: - raise QtBindingMissingModuleError(name='QtPurchasing') -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPurchasing') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtPurchasing') diff --git a/winpython/_vendor/qtpy/QtQml.py b/winpython/_vendor/qtpy/QtQml.py deleted file mode 100644 index 9d07f0e8..00000000 --- a/winpython/_vendor/qtpy/QtQml.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQml classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtQml import * -elif PYQT6: - from PyQt6.QtQml import * -elif PYSIDE6: - from PySide6.QtQml import * -elif PYSIDE2: - from PySide2.QtQml import * diff --git a/winpython/_vendor/qtpy/QtQuick.py b/winpython/_vendor/qtpy/QtQuick.py deleted file mode 100644 index 7f140cb1..00000000 --- a/winpython/_vendor/qtpy/QtQuick.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuick classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtQuick import * -elif PYQT6: - from PyQt6.QtQuick import * -elif PYSIDE6: - from PySide6.QtQuick import * -elif PYSIDE2: - from PySide2.QtQuick import * diff --git a/winpython/_vendor/qtpy/QtQuick3D.py b/winpython/_vendor/qtpy/QtQuick3D.py deleted file mode 100644 index eeb0a60c..00000000 --- a/winpython/_vendor/qtpy/QtQuick3D.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuick3D classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtQuick3D import * -elif PYQT6: - from PyQt6.QtQuick3D import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtQuick3D') -elif PYSIDE6: - from PySide6.QtQuick3D import * diff --git a/winpython/_vendor/qtpy/QtQuickControls2.py b/winpython/_vendor/qtpy/QtQuickControls2.py deleted file mode 100644 index 743aa5d4..00000000 --- a/winpython/_vendor/qtpy/QtQuickControls2.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuickControls2 classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtQuickControls2') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtQuickControls2') -elif PYSIDE2: - from PySide2.QtQuickControls2 import * -elif PYSIDE6: - from PySide6.QtQuickControls2 import * diff --git a/winpython/_vendor/qtpy/QtQuickWidgets.py b/winpython/_vendor/qtpy/QtQuickWidgets.py deleted file mode 100644 index 4ed4a21c..00000000 --- a/winpython/_vendor/qtpy/QtQuickWidgets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuickWidgets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtQuickWidgets import * -elif PYQT6: - from PyQt6.QtQuickWidgets import * -elif PYSIDE6: - from PySide6.QtQuickWidgets import * -elif PYSIDE2: - from PySide2.QtQuickWidgets import * diff --git a/winpython/_vendor/qtpy/QtRemoteObjects.py b/winpython/_vendor/qtpy/QtRemoteObjects.py deleted file mode 100644 index 1035586b..00000000 --- a/winpython/_vendor/qtpy/QtRemoteObjects.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtRemoteObjects classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtRemoteObjects import * -elif PYQT6: - from PyQt6.QtRemoteObjects import * -elif PYSIDE6: - from PySide6.QtRemoteObjects import * -elif PYSIDE2: - from PySide2.QtRemoteObjects import * diff --git a/winpython/_vendor/qtpy/QtScxml.py b/winpython/_vendor/qtpy/QtScxml.py deleted file mode 100644 index 81a9ac13..00000000 --- a/winpython/_vendor/qtpy/QtScxml.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtScxml classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtScxml') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtScxml') -elif PYSIDE2: - from PySide2.QtScxml import * -elif PYSIDE6: - from PySide6.QtScxml import * diff --git a/winpython/_vendor/qtpy/QtSensors.py b/winpython/_vendor/qtpy/QtSensors.py deleted file mode 100644 index 25b29190..00000000 --- a/winpython/_vendor/qtpy/QtSensors.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSensors classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSensors import * -elif PYQT6: - from PyQt6.QtSensors import * -elif PYSIDE6: - from PySide6.QtSensors import * -elif PYSIDE2: - from PySide2.QtSensors import * diff --git a/winpython/_vendor/qtpy/QtSerialPort.py b/winpython/_vendor/qtpy/QtSerialPort.py deleted file mode 100644 index 878c35b1..00000000 --- a/winpython/_vendor/qtpy/QtSerialPort.py +++ /dev/null @@ -1,20 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2020 Marcin Stano -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSerialPort classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSerialPort import * -elif PYQT6: - from PyQt6.QtSerialPort import * -elif PYSIDE6: - from PySide6.QtSerialPort import * -elif PYSIDE2: - from PySide2.QtSerialPort import * diff --git a/winpython/_vendor/qtpy/QtSql.py b/winpython/_vendor/qtpy/QtSql.py deleted file mode 100644 index 5f7395b8..00000000 --- a/winpython/_vendor/qtpy/QtSql.py +++ /dev/null @@ -1,26 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSql classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtSql import * -elif PYQT6: - from PyQt6.QtSql import * - QSqlDatabase.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlQuery.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlResult.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtSql import * - # Map DeprecationWarning methods - QSqlDatabase.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlQuery.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlResult.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE2: - from PySide2.QtSql import * diff --git a/winpython/_vendor/qtpy/QtStateMachine.py b/winpython/_vendor/qtpy/QtStateMachine.py deleted file mode 100644 index 4afbcf49..00000000 --- a/winpython/_vendor/qtpy/QtStateMachine.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtStateMachine classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYSIDE6: - from PySide6.QtStateMachine import * diff --git a/winpython/_vendor/qtpy/QtSvg.py b/winpython/_vendor/qtpy/QtSvg.py deleted file mode 100644 index 0ee4f9e1..00000000 --- a/winpython/_vendor/qtpy/QtSvg.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSvg classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSvg import * -elif PYQT6: - from PyQt6.QtSvg import * -elif PYSIDE2: - from PySide2.QtSvg import * -elif PYSIDE6: - from PySide6.QtSvg import * diff --git a/winpython/_vendor/qtpy/QtSvgWidgets.py b/winpython/_vendor/qtpy/QtSvgWidgets.py deleted file mode 100644 index 07eedb07..00000000 --- a/winpython/_vendor/qtpy/QtSvgWidgets.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSvgWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtSvgWidgets') -elif PYQT6: - from PyQt6.QtSvgWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtSvgWidgets') -elif PYSIDE6: - from PySide6.QtSvgWidgets import * diff --git a/winpython/_vendor/qtpy/QtTest.py b/winpython/_vendor/qtpy/QtTest.py deleted file mode 100644 index 3be7f95a..00000000 --- a/winpython/_vendor/qtpy/QtTest.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtTest and functions""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtTest import * -elif PYQT6: - from PyQt6 import QtTest - from PyQt6.QtTest import * - - # Allow unscoped access for enums inside the QtTest module - from .enums_compat import promote_enums - - promote_enums(QtTest) - del QtTest -elif PYSIDE2: - from PySide2.QtTest import * -elif PYSIDE6: - from PySide6.QtTest import * diff --git a/winpython/_vendor/qtpy/QtTextToSpeech.py b/winpython/_vendor/qtpy/QtTextToSpeech.py deleted file mode 100644 index cd978328..00000000 --- a/winpython/_vendor/qtpy/QtTextToSpeech.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtTextToSpeech classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtTextToSpeech import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtTextToSpeech') -elif PYSIDE2: - from PySide2.QtTextToSpeech import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtTextToSpeech') diff --git a/winpython/_vendor/qtpy/QtUiTools.py b/winpython/_vendor/qtpy/QtUiTools.py deleted file mode 100644 index 5104a645..00000000 --- a/winpython/_vendor/qtpy/QtUiTools.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtUiTools classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtUiTools') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtUiTools') -elif PYSIDE2: - from PySide2.QtUiTools import * -elif PYSIDE6: - from PySide6.QtUiTools import * diff --git a/winpython/_vendor/qtpy/QtWebChannel.py b/winpython/_vendor/qtpy/QtWebChannel.py deleted file mode 100644 index b2c35fff..00000000 --- a/winpython/_vendor/qtpy/QtWebChannel.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebChannel classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWebChannel import * -elif PYQT6: - from PyQt6.QtWebChannel import * -elif PYSIDE2: - from PySide2.QtWebChannel import * -elif PYSIDE6: - from PySide6.QtWebChannel import * diff --git a/winpython/_vendor/qtpy/QtWebEngine.py b/winpython/_vendor/qtpy/QtWebEngine.py deleted file mode 100644 index c5c80d52..00000000 --- a/winpython/_vendor/qtpy/QtWebEngine.py +++ /dev/null @@ -1,32 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngine classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtWebEngine import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngine', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtWebEngine') -elif PYSIDE2: - from PySide2.QtWebEngine import * -elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtWebEngine') diff --git a/winpython/_vendor/qtpy/QtWebEngineCore.py b/winpython/_vendor/qtpy/QtWebEngineCore.py deleted file mode 100644 index 76efbbfb..00000000 --- a/winpython/_vendor/qtpy/QtWebEngineCore.py +++ /dev/null @@ -1,35 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineCore classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtWebEngineCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineCore', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - try: - from PyQt6.QtWebEngineCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineCore', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - from PySide2.QtWebEngineCore import * -elif PYSIDE6: - from PySide6.QtWebEngineCore import * diff --git a/winpython/_vendor/qtpy/QtWebEngineQuick.py b/winpython/_vendor/qtpy/QtWebEngineQuick.py deleted file mode 100644 index 659834a3..00000000 --- a/winpython/_vendor/qtpy/QtWebEngineQuick.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineQuick classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtWebEngineQuick') -elif PYQT6: - try: - from PyQt6.QtWebEngineQuick import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineQuick', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtWebEngineQuick') -elif PYSIDE6: - from PySide6.QtWebEngineQuick import * diff --git a/winpython/_vendor/qtpy/QtWebEngineWidgets.py b/winpython/_vendor/qtpy/QtWebEngineWidgets.py deleted file mode 100644 index 05a18378..00000000 --- a/winpython/_vendor/qtpy/QtWebEngineWidgets.py +++ /dev/null @@ -1,63 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - - -# To test if we are using WebEngine or WebKit -# NOTE: This constant is imported by other projects (e.g. Spyder), so please -# don't remove it. -WEBENGINE = True - - -if PYQT5: - try: - from PyQt5.QtWebEngineWidgets import QWebEnginePage - from PyQt5.QtWebEngineWidgets import QWebEngineView - from PyQt5.QtWebEngineWidgets import QWebEngineSettings - from PyQt5.QtWebEngineWidgets import QWebEngineScript - - # Based on the work at https://github.com/spyder-ide/qtpy/pull/203 - from PyQt5.QtWebEngineWidgets import QWebEngineProfile - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineWidgets', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - try: - from PyQt6.QtWebEngineWidgets import * - from PyQt6.QtWebEngineCore import QWebEnginePage - from PyQt6.QtWebEngineCore import QWebEngineSettings - from PyQt6.QtWebEngineCore import QWebEngineProfile - from PyQt6.QtWebEngineCore import QWebEngineScript - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineWidgets', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - from PySide2.QtWebEngineWidgets import QWebEnginePage - from PySide2.QtWebEngineWidgets import QWebEngineView - from PySide2.QtWebEngineWidgets import QWebEngineSettings - from PySide2.QtWebEngineWidgets import QWebEngineScript - - # Based on the work at https://github.com/spyder-ide/qtpy/pull/203 - from PySide2.QtWebEngineWidgets import QWebEngineProfile -elif PYSIDE6: - from PySide6.QtWebEngineWidgets import * - from PySide6.QtWebEngineCore import QWebEnginePage - from PySide6.QtWebEngineCore import QWebEngineSettings - from PySide6.QtWebEngineCore import QWebEngineProfile - from PySide6.QtWebEngineCore import QWebEngineScript diff --git a/winpython/_vendor/qtpy/QtWebSockets.py b/winpython/_vendor/qtpy/QtWebSockets.py deleted file mode 100644 index a9bd33d9..00000000 --- a/winpython/_vendor/qtpy/QtWebSockets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebSockets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWebSockets import * -elif PYQT6: - from PyQt6.QtWebSockets import * -elif PYSIDE2: - from PySide2.QtWebSockets import * -elif PYSIDE6: - from PySide6.QtWebSockets import * diff --git a/winpython/_vendor/qtpy/QtWidgets.py b/winpython/_vendor/qtpy/QtWidgets.py deleted file mode 100644 index 1e4a0340..00000000 --- a/winpython/_vendor/qtpy/QtWidgets.py +++ /dev/null @@ -1,54 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides widget classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWidgets import * -elif PYQT6: - from PyQt6 import QtWidgets - from PyQt6.QtWidgets import * - from PyQt6.QtGui import QAction, QActionGroup, QShortcut, QFileSystemModel, QUndoCommand - from PyQt6.QtOpenGLWidgets import QOpenGLWidget - - # Map missing/renamed methods - QTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QTextEdit.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - QPlainTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QPlainTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QPlainTextEdit.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - QApplication.exec_ = QApplication.exec - QDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QMenu.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QLineEdit.getTextMargins = lambda self: (self.textMargins().left(), self.textMargins().top(), self.textMargins().right(), self.textMargins().bottom()) - - # Allow unscoped access for enums inside the QtWidgets module - from .enums_compat import promote_enums - promote_enums(QtWidgets) - del QtWidgets -elif PYSIDE2: - from PySide2.QtWidgets import * -elif PYSIDE6: - from PySide6.QtWidgets import * - from PySide6.QtGui import QAction, QActionGroup, QShortcut, QUndoCommand - from PySide6.QtOpenGLWidgets import QOpenGLWidget - - # Map missing/renamed methods - QTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QPlainTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QPlainTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QLineEdit.getTextMargins = lambda self: (self.textMargins().left(), self.textMargins().top(), self.textMargins().right(), self.textMargins().bottom()) - - # Map DeprecationWarning methods - QApplication.exec_ = QApplication.exec - QDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QMenu.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) diff --git a/winpython/_vendor/qtpy/QtWinExtras.py b/winpython/_vendor/qtpy/QtWinExtras.py deleted file mode 100644 index 0396f953..00000000 --- a/winpython/_vendor/qtpy/QtWinExtras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Windows-specific utilities""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'win32': - if PYQT5: - from PyQt5.QtWinExtras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtWinExtras') - elif PYSIDE2: - from PySide2.QtWinExtras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtWinExtras') -else: - raise QtModuleNotInOSError(name='QtWinExtras') diff --git a/winpython/_vendor/qtpy/QtX11Extras.py b/winpython/_vendor/qtpy/QtX11Extras.py deleted file mode 100644 index 51247c13..00000000 --- a/winpython/_vendor/qtpy/QtX11Extras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Linux-specific utilities""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'linux': - if PYQT5: - from PyQt5.QtX11Extras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtX11Extras') - elif PYSIDE2: - from PySide2.QtX11Extras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtX11Extras') -else: - raise QtModuleNotInOSError(name='QtX11Extras') diff --git a/winpython/_vendor/qtpy/QtXml.py b/winpython/_vendor/qtpy/QtXml.py deleted file mode 100644 index 5f1e3b82..00000000 --- a/winpython/_vendor/qtpy/QtXml.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtXml classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtXml import * -elif PYQT6: - from PyQt6.QtXml import * -elif PYSIDE2: - from PySide2.QtXml import * -elif PYSIDE6: - from PySide6.QtXml import * diff --git a/winpython/_vendor/qtpy/QtXmlPatterns.py b/winpython/_vendor/qtpy/QtXmlPatterns.py deleted file mode 100644 index 5e63f448..00000000 --- a/winpython/_vendor/qtpy/QtXmlPatterns.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtXmlPatterns classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtXmlPatterns import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtXmlPatterns') -elif PYSIDE2: - from PySide2.QtXmlPatterns import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtXmlPatterns') diff --git a/winpython/_vendor/qtpy/__init__.py b/winpython/_vendor/qtpy/__init__.py deleted file mode 100644 index 309b7b7e..00000000 --- a/winpython/_vendor/qtpy/__init__.py +++ /dev/null @@ -1,308 +0,0 @@ -# -# Copyright © 2009- The Spyder Development Team -# Copyright © 2014-2015 Colin Duquesnoy -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) - -""" -**QtPy** is a shim over the various Python Qt bindings. It is used to write -Qt binding independent libraries or applications. - -If one of the APIs has already been imported, then it will be used. - -Otherwise, the shim will automatically select the first available API (PyQt5, PySide2, -PyQt6 and PySide6); in that case, you can force the use of one -specific bindings (e.g. if your application is using one specific bindings and -you need to use library that use QtPy) by setting up the ``QT_API`` environment -variable. - -PyQt5 -===== - -For PyQt5, you don't have to set anything as it will be used automatically:: - - >>> from qtpy import QtGui, QtWidgets, QtCore - >>> print(QtWidgets.QWidget) - -PySide2 -====== - -Set the QT_API environment variable to 'pyside2' before importing other -packages:: - - >>> import os - >>> os.environ['QT_API'] = 'pyside2' - >>> from qtpy import QtGui, QtWidgets, QtCore - >>> print(QtWidgets.QWidget) - -PyQt6 -===== - - >>> import os - >>> os.environ['QT_API'] = 'pyqt6' - >>> from qtpy import QtGui, QtWidgets, QtCore - >>> print(QtWidgets.QWidget) - -PySide6 -======= - - >>> import os - >>> os.environ['QT_API'] = 'pyside6' - >>> from qtpy import QtGui, QtWidgets, QtCore - >>> print(QtWidgets.QWidget) - -""" - -from packaging.version import parse -import os -import platform -import sys -import warnings - -# Version of QtPy -__version__ = '2.3.0' - - -class PythonQtError(RuntimeError): - """Error raised if no bindings could be selected.""" - - -class PythonQtWarning(Warning): - """Warning if some features are not implemented in a binding.""" - - -class PythonQtValueError(ValueError): - """Error raised if an invalid QT_API is specified.""" - - -class QtBindingsNotFoundError(PythonQtError): - """Error raised if no bindings could be selected.""" - _msg = 'No Qt bindings could be found' - - def __init__(self): - super().__init__(self._msg) - - -class QtModuleNotFoundError(ModuleNotFoundError, PythonQtError): - """Raised when a Python Qt binding submodule is not installed/supported.""" - _msg = 'The {name} module was not found.' - _msg_binding = '{binding}' - _msg_extra = '' - - def __init__(self, *, name, msg=None, **msg_kwargs): - global API_NAME - binding = self._msg_binding.format(binding=API_NAME) - msg = msg or f'{self._msg} {self._msg_extra}'.strip() - msg = msg.format(name=name, binding=binding, **msg_kwargs) - super().__init__(msg, name=name) - - -class QtModuleNotInOSError(QtModuleNotFoundError): - """Raised when a module is not supported on the current operating system.""" - _msg = '{name} does not exist on this operating system.' - - -class QtModuleNotInQtVersionError(QtModuleNotFoundError): - """Raised when a module is not implemented in the current Qt version.""" - _msg = '{name} does not exist in {version}.' - - def __init__(self, *, name, msg=None, **msg_kwargs): - global QT5, QT6 - version = 'Qt5' if QT5 else 'Qt6' - super().__init__(name=name, version=version) - - -class QtBindingMissingModuleError(QtModuleNotFoundError): - """Raised when a module is not supported by a given binding.""" - _msg_extra = 'It is not currently implemented in {binding}.' - - -class QtModuleNotInstalledError(QtModuleNotFoundError): - """Raise when a module is supported by the binding, but not installed.""" - _msg_extra = 'It must be installed separately' - - def __init__(self, *, missing_package=None, **superclass_kwargs): - self.missing_package = missing_package - if missing_package is not None: - self._msg_extra += ' as {missing_package}.' - super().__init__(missing_package=missing_package, **superclass_kwargs) - - -# Qt API environment variable name -QT_API = 'QT_API' - -# Names of the expected PyQt5 api -PYQT5_API = ['pyqt5'] - -PYQT6_API = ['pyqt6'] - -# Names of the expected PySide2 api -PYSIDE2_API = ['pyside2'] - -# Names of the expected PySide6 api -PYSIDE6_API = ['pyside6'] - -# Minimum supported versions of Qt and the bindings -QT5_VERSION_MIN = PYQT5_VERSION_MIN = '5.9.0' -PYSIDE2_VERSION_MIN = '5.12.0' -QT6_VERSION_MIN = PYQT6_VERSION_MIN = PYSIDE6_VERSION_MIN = '6.2.0' - -QT_VERSION_MIN = QT5_VERSION_MIN -PYQT_VERSION_MIN = PYQT5_VERSION_MIN -PYSIDE_VERSION_MIN = PYSIDE2_VERSION_MIN - -# Detecting if a binding was specified by the user -binding_specified = QT_API in os.environ - -API_NAMES = {'pyqt5': 'PyQt5', 'pyside2': 'PySide2', - 'pyqt6': 'PyQt6', 'pyside6': 'PySide6'} -API = os.environ.get(QT_API, 'pyqt5').lower() -initial_api = API -if API not in API_NAMES: - raise PythonQtValueError( - f'Specified QT_API={repr(QT_API.lower())} is not in valid options: ' - f'{API_NAMES}') - -is_old_pyqt = is_pyqt46 = False -QT5 = PYQT5 = True -QT4 = QT6 = PYQT4 = PYQT6 = PYSIDE = PYSIDE2 = PYSIDE6 = False - -PYQT_VERSION = None -PYSIDE_VERSION = None -QT_VERSION = None - -# Unless `FORCE_QT_API` is set, use previously imported Qt Python bindings -if not os.environ.get('FORCE_QT_API'): - if 'PyQt5' in sys.modules: - API = initial_api if initial_api in PYQT5_API else 'pyqt5' - elif 'PySide2' in sys.modules: - API = initial_api if initial_api in PYSIDE2_API else 'pyside2' - elif 'PyQt6' in sys.modules: - API = initial_api if initial_api in PYQT6_API else 'pyqt6' - elif 'PySide6' in sys.modules: - API = initial_api if initial_api in PYSIDE6_API else 'pyside6' - -if API in PYQT5_API: - try: - from PyQt5.QtCore import PYQT_VERSION_STR as PYQT_VERSION # analysis:ignore - from PyQt5.QtCore import QT_VERSION_STR as QT_VERSION # analysis:ignore - - QT5 = PYQT5 = True - - if sys.platform == 'darwin': - macos_version = parse(platform.mac_ver()[0]) - if macos_version < parse('10.10'): - if parse(QT_VERSION) >= parse('5.9'): - raise PythonQtError("Qt 5.9 or higher only works in " - "macOS 10.10 or higher. Your " - "program will fail in this " - "system.") - elif macos_version < parse('10.11'): - if parse(QT_VERSION) >= parse('5.11'): - raise PythonQtError("Qt 5.11 or higher only works in " - "macOS 10.11 or higher. Your " - "program will fail in this " - "system.") - - del macos_version - except ImportError: - API = 'pyside2' - else: - os.environ[QT_API] = API - -if API in PYSIDE2_API: - try: - from PySide2 import __version__ as PYSIDE_VERSION # analysis:ignore - from PySide2.QtCore import __version__ as QT_VERSION # analysis:ignore - - PYQT5 = False - QT5 = PYSIDE2 = True - - if sys.platform == 'darwin': - macos_version = parse(platform.mac_ver()[0]) - if macos_version < parse('10.11'): - if parse(QT_VERSION) >= parse('5.11'): - raise PythonQtError("Qt 5.11 or higher only works in " - "macOS 10.11 or higher. Your " - "program will fail in this " - "system.") - - del macos_version - except ImportError: - API = 'pyqt6' - else: - os.environ[QT_API] = API - -if API in PYQT6_API: - try: - from PyQt6.QtCore import PYQT_VERSION_STR as PYQT_VERSION # analysis:ignore - from PyQt6.QtCore import QT_VERSION_STR as QT_VERSION # analysis:ignore - - QT5 = PYQT5 = False - QT6 = PYQT6 = True - - except ImportError: - API = 'pyside6' - else: - os.environ[QT_API] = API - -if API in PYSIDE6_API: - try: - from PySide6 import __version__ as PYSIDE_VERSION # analysis:ignore - from PySide6.QtCore import __version__ as QT_VERSION # analysis:ignore - - QT5 = PYQT5 = False - QT6 = PYSIDE6 = True - - except ImportError: - raise QtBindingsNotFoundError() - else: - os.environ[QT_API] = API - - -# If a correct API name is passed to QT_API and it could not be found, -# switches to another and informs through the warning -if API != initial_api and binding_specified: - warnings.warn('Selected binding "{}" could not be found, ' - 'using "{}"'.format(initial_api, API), RuntimeWarning) - - -# Set display name of the Qt API -API_NAME = API_NAMES[API] - -try: - # QtDataVisualization backward compatibility (QtDataVisualization vs. QtDatavisualization) - # Only available for Qt5 bindings > 5.9 on Windows - from . import QtDataVisualization as QtDatavisualization # analysis:ignore -except (ImportError, PythonQtError): - pass - - -def _warn_old_minor_version(name, old_version, min_version): - """Warn if using a Qt or binding version no longer supported by QtPy.""" - warning_message = ( - "{name} version {old_version} is not supported by QtPy. " - "To ensure your application works correctly with QtPy, " - "please upgrade to {name} {min_version} or later.".format( - name=name, old_version=old_version, min_version=min_version)) - warnings.warn(warning_message, PythonQtWarning) - - -# Warn if using an End of Life or unsupported Qt API/binding minor version -if QT_VERSION: - if QT5 and (parse(QT_VERSION) < parse(QT5_VERSION_MIN)): - _warn_old_minor_version('Qt5', QT_VERSION, QT5_VERSION_MIN) - elif QT6 and (parse(QT_VERSION) < parse(QT6_VERSION_MIN)): - _warn_old_minor_version('Qt6', QT_VERSION, QT6_VERSION_MIN) - -if PYQT_VERSION: - if PYQT5 and (parse(PYQT_VERSION) < parse(PYQT5_VERSION_MIN)): - _warn_old_minor_version('PyQt5', PYQT_VERSION, PYQT5_VERSION_MIN) - elif PYQT6 and (parse(PYQT_VERSION) < parse(PYQT6_VERSION_MIN)): - _warn_old_minor_version('PyQt6', PYQT_VERSION, PYQT6_VERSION_MIN) -elif PYSIDE_VERSION: - if PYSIDE2 and (parse(PYSIDE_VERSION) < parse(PYSIDE2_VERSION_MIN)): - _warn_old_minor_version('PySide2', PYSIDE_VERSION, PYSIDE2_VERSION_MIN) - elif PYSIDE6 and (parse(PYSIDE_VERSION) < parse(PYSIDE6_VERSION_MIN)): - _warn_old_minor_version('PySide6', PYSIDE_VERSION, PYSIDE6_VERSION_MIN) diff --git a/winpython/_vendor/qtpy/__main__.py b/winpython/_vendor/qtpy/__main__.py deleted file mode 100644 index a8f993c0..00000000 --- a/winpython/_vendor/qtpy/__main__.py +++ /dev/null @@ -1,18 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The QtPy Contributors -# -# Released under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Dev CLI entry point for QtPy, a compat layer for the Python Qt bindings.""" - -import qtpy.cli - - -def main(): - return qtpy.cli.main() - - -if __name__ == "__main__": - main() diff --git a/winpython/_vendor/qtpy/cli.py b/winpython/_vendor/qtpy/cli.py deleted file mode 100644 index 3a629970..00000000 --- a/winpython/_vendor/qtpy/cli.py +++ /dev/null @@ -1,88 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The QtPy Contributors -# -# Released under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provide a CLI to allow configuring developer settings, including mypy.""" - -# Standard library imports -import argparse -import textwrap - - -def print_version(): - """Print the current version of the package.""" - import qtpy - print('QtPy version', qtpy.__version__) - - -def generate_mypy_args(): - """Generate a string with always-true/false args to pass to mypy.""" - options = {False: '--always-false', True: '--always-true'} - - import qtpy - - apis_active = {name: qtpy.API == name for name in qtpy.API_NAMES} - mypy_args = ' '.join( - f'{options[is_active]}={name.upper()}' - for name, is_active in apis_active.items() - ) - return mypy_args - - -def print_mypy_args(): - """Print the generated mypy args to stdout.""" - print(generate_mypy_args()) - - -def generate_arg_parser(): - """Generate the argument parser for the dev CLI for QtPy.""" - parser = argparse.ArgumentParser( - description='Features to support development with QtPy.', - ) - parser.set_defaults(func=parser.print_help) - - parser.add_argument( - '--version', action='store_const', dest='func', const=print_version, - help='If passed, will print the version and exit') - - cli_subparsers = parser.add_subparsers( - title='Subcommands', help='Subcommand to run', metavar='Subcommand') - - # Parser for the MyPy args subcommand - mypy_args_parser = cli_subparsers.add_parser( - name='mypy-args', - help='Generate command line arguments for using mypy with QtPy.', - formatter_class=argparse.RawTextHelpFormatter, - description=textwrap.dedent( - """ - Generate command line arguments for using mypy with QtPy. - - This will generate strings similar to the following - which help guide mypy through which library QtPy would have used - so that mypy can get the proper underlying type hints. - - --always-false=PYQT5 --always-false=PYQT6 --always-true=PYSIDE2 --always-false=PYSIDE6 - - It can be used as follows on Bash or a similar shell: - - mypy --package mypackage $(qtpy mypy-args) - """ - ), - ) - mypy_args_parser.set_defaults(func=print_mypy_args) - - return parser - - -def main(args=None): - """Run the development CLI for QtPy.""" - parser = generate_arg_parser() - parsed_args = parser.parse_args(args=args) - - reserved_params = {'func'} - cleaned_args = {key: value for key, value in vars(parsed_args).items() - if key not in reserved_params} - parsed_args.func(**cleaned_args) diff --git a/winpython/_vendor/qtpy/compat.py b/winpython/_vendor/qtpy/compat.py deleted file mode 100644 index 325c0ddb..00000000 --- a/winpython/_vendor/qtpy/compat.py +++ /dev/null @@ -1,149 +0,0 @@ -# -# Copyright © 2009- The Spyder Development Team -# Licensed under the terms of the MIT License - -""" -Compatibility functions -""" -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, -) - -from .QtWidgets import QFileDialog - - -TEXT_TYPES = (str,) - - -def is_text_string(obj): - """Return True if `obj` is a text string, False if it is anything else, - like binary data.""" - return isinstance(obj, str) - - -def to_text_string(obj, encoding=None): - """Convert `obj` to (unicode) text string""" - if encoding is None: - return str(obj) - elif isinstance(obj, str): - # In case this function is not used properly, this could happen - return obj - else: - return str(obj, encoding) - - -# ============================================================================= -# QVariant conversion utilities -# ============================================================================= -PYQT_API_1 = False -def to_qvariant(obj=None): # analysis:ignore - """Convert Python object to QVariant - This is a transitional function from PyQt API#1 (QVariant exist) - to PyQt API#2 and Pyside (QVariant does not exist)""" - return obj - -def from_qvariant(qobj=None, pytype=None): # analysis:ignore - """Convert QVariant object to Python object - This is a transitional function from PyQt API #1 (QVariant exist) - to PyQt API #2 and Pyside (QVariant does not exist)""" - return qobj - - -# ============================================================================= -# Wrappers around QFileDialog static methods -# ============================================================================= -def getexistingdirectory(parent=None, caption='', basedir='', - options=QFileDialog.ShowDirsOnly): - """Wrapper around QtGui.QFileDialog.getExistingDirectory static method - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - # Calling QFileDialog static method - if sys.platform == "win32": - # On Windows platforms: redirect standard outputs - _temp1, _temp2 = sys.stdout, sys.stderr - sys.stdout, sys.stderr = None, None - try: - result = QFileDialog.getExistingDirectory(parent, caption, basedir, - options) - finally: - if sys.platform == "win32": - # On Windows platforms: restore standard outputs - sys.stdout, sys.stderr = _temp1, _temp2 - if not is_text_string(result): - # PyQt API #1 - result = to_text_string(result) - return result - - -def _qfiledialog_wrapper(attr, parent=None, caption='', basedir='', - filters='', selectedfilter='', options=None): - if options is None: - options = QFileDialog.Option(0) - - func = getattr(QFileDialog, attr) - - # Calling QFileDialog static method - if sys.platform == "win32": - # On Windows platforms: redirect standard outputs - _temp1, _temp2 = sys.stdout, sys.stderr - sys.stdout, sys.stderr = None, None - result = func(parent, caption, basedir, filters, selectedfilter, options) - if sys.platform == "win32": - # On Windows platforms: restore standard outputs - sys.stdout, sys.stderr = _temp1, _temp2 - - output, selectedfilter = result - - # Always returns the tuple (output, selectedfilter) - return output, selectedfilter - - -def getopenfilename(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getOpenFileName static method - Returns a tuple (filename, selectedfilter) -- when dialog box is canceled, - returns a tuple of empty strings - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getOpenFileName', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - - -def getopenfilenames(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getOpenFileNames static method - Returns a tuple (filenames, selectedfilter) -- when dialog box is canceled, - returns a tuple (empty list, empty string) - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getOpenFileNames', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - - -def getsavefilename(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getSaveFileName static method - Returns a tuple (filename, selectedfilter) -- when dialog box is canceled, - returns a tuple of empty strings - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getSaveFileName', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - -# ============================================================================= -def isalive(object): - """Wrapper around sip.isdeleted and shiboken.isValid which tests whether - an object is currently alive.""" - if PYQT5 or PYQT6: - from . import sip - return not sip.isdeleted(object) - elif PYSIDE2 or PYSIDE6: - from . import shiboken - return shiboken.isValid(object) diff --git a/winpython/_vendor/qtpy/enums_compat.py b/winpython/_vendor/qtpy/enums_compat.py deleted file mode 100644 index 70263fa2..00000000 --- a/winpython/_vendor/qtpy/enums_compat.py +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright © 2009- The Spyder Development Team -# Copyright © 2012- University of North Carolina at Chapel Hill -# Luke Campagnola ('luke.campagnola@%s.com' % 'gmail') -# Ogi Moore ('ognyan.moore@%s.com' % 'gmail') -# KIU Shueng Chuan ('nixchuan@%s.com' % 'gmail') -# Licensed under the terms of the MIT License - -""" -Compatibility functions for scoped and unscoped enum access. -""" - -from . import PYQT6 - -if PYQT6: - import enum - - from . import sip - - def promote_enums(module): - """ - Search enums in the given module and allow unscoped access. - - Taken from: - https://github.com/pyqtgraph/pyqtgraph/blob/pyqtgraph-0.12.1/pyqtgraph/Qt.py#L331-L377 - and adapted to also copy enum values aliased under different names. - - """ - class_names = [name for name in dir(module) if name.startswith('Q')] - for class_name in class_names: - klass = getattr(module, class_name) - if not isinstance(klass, sip.wrappertype): - continue - attrib_names = [name for name in dir(klass) if name[0].isupper()] - for attrib_name in attrib_names: - attrib = getattr(klass, attrib_name) - if not isinstance(attrib, enum.EnumMeta): - continue - for name, value in attrib.__members__.items(): - setattr(klass, name, value) diff --git a/winpython/_vendor/qtpy/py.typed b/winpython/_vendor/qtpy/py.typed deleted file mode 100644 index e69de29b..00000000 diff --git a/winpython/_vendor/qtpy/shiboken.py b/winpython/_vendor/qtpy/shiboken.py deleted file mode 100644 index e9d79320..00000000 --- a/winpython/_vendor/qtpy/shiboken.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides access to shiboken.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='shiboken') -elif PYQT6: - raise QtBindingMissingModuleError(name='shiboken') -elif PYSIDE2: - from shiboken2 import * - import shiboken2 as shiboken -elif PYSIDE6: - from shiboken6 import * - import shiboken6 as shiboken diff --git a/winpython/_vendor/qtpy/sip.py b/winpython/_vendor/qtpy/sip.py deleted file mode 100644 index 89a31ff3..00000000 --- a/winpython/_vendor/qtpy/sip.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides access to sip.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.sip import * -elif PYQT6: - from PyQt6.sip import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='sip') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='sip') diff --git a/winpython/_vendor/qtpy/tests/Qsci.py b/winpython/_vendor/qtpy/tests/Qsci.py deleted file mode 100644 index 18d1ef06..00000000 --- a/winpython/_vendor/qtpy/tests/Qsci.py +++ /dev/null @@ -1,36 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qsci classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInstalledError -) - -if PYQT5: - try: - from PyQt5.Qsci import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qsci', missing_package='QScintilla' - ) from error -elif PYQT6: - try: - from PyQt6.Qsci import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qsci', missing_package='PyQt6-QScintilla' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='Qsci') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='Qsci') diff --git a/winpython/_vendor/qtpy/tests/Qt3DAnimation.py b/winpython/_vendor/qtpy/tests/Qt3DAnimation.py deleted file mode 100644 index 4befdd92..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DAnimation.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DAnimation classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DAnimation import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DAnimation', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DAnimation import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DAnimation', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DAnimation as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DAnimation): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DAnimation as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DAnimation): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/Qt3DCore.py b/winpython/_vendor/qtpy/tests/Qt3DCore.py deleted file mode 100644 index 007ef876..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DCore.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DCore classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DCore', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DCore', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DCore as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DCore): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DCore as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DCore): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/Qt3DExtras.py b/winpython/_vendor/qtpy/tests/Qt3DExtras.py deleted file mode 100644 index 81b82c16..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DExtras.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DExtras classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DExtras import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DExtras', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DExtras import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DExtras', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DExtras as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DExtras): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DExtras as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DExtras): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/Qt3DInput.py b/winpython/_vendor/qtpy/tests/Qt3DInput.py deleted file mode 100644 index 5a706be5..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DInput.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DInput classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DInput import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DInput', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DInput import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DInput', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DInput as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DInput): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DInput as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DInput): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/Qt3DLogic.py b/winpython/_vendor/qtpy/tests/Qt3DLogic.py deleted file mode 100644 index 59077c06..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DLogic.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DLogic classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DLogic import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DLogic', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DLogic import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DLogic', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DLogic as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DLogic): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DLogic as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DLogic): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/Qt3DRender.py b/winpython/_vendor/qtpy/tests/Qt3DRender.py deleted file mode 100644 index d7bf9f00..00000000 --- a/winpython/_vendor/qtpy/tests/Qt3DRender.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Qt3DRender classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.Qt3DRender import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DRender', missing_package='PyQt3D' - ) from error -elif PYQT6: - try: - from PyQt6.Qt3DRender import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='Qt3DRender', missing_package='PyQt6-3D' - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.Qt3DRender as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DRender): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide6.Qt3DRender as __temp - import inspect - - for __name in inspect.getmembers(__temp.Qt3DRender): - globals()[__name[0]] = __name[1] diff --git a/winpython/_vendor/qtpy/tests/QtAxContainer.py b/winpython/_vendor/qtpy/tests/QtAxContainer.py deleted file mode 100644 index 801491d6..00000000 --- a/winpython/_vendor/qtpy/tests/QtAxContainer.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtAxContainer classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtAxContainer') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtAxContainer') -elif PYSIDE2: - from PySide2.QtAxContainer import * -elif PYSIDE6: - from PySide6.QtAxContainer import * diff --git a/winpython/_vendor/qtpy/tests/QtBluetooth.py b/winpython/_vendor/qtpy/tests/QtBluetooth.py deleted file mode 100644 index 2f649743..00000000 --- a/winpython/_vendor/qtpy/tests/QtBluetooth.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtBluetooth classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtBluetooth import * -elif PYQT6: - from PyQt6.QtBluetooth import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtBluetooth') -elif PYSIDE6: - from PySide6.QtBluetooth import * diff --git a/winpython/_vendor/qtpy/tests/QtCharts.py b/winpython/_vendor/qtpy/tests/QtCharts.py deleted file mode 100644 index 568d9c99..00000000 --- a/winpython/_vendor/qtpy/tests/QtCharts.py +++ /dev/null @@ -1,45 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2019- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtChart classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtChart import * - from PyQt5 import QtChart as QtCharts - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtCharts', missing_package='PyQtChart' - ) from error -elif PYQT6: - try: - from PyQt6.QtCharts import * - from PyQt6 import QtCharts - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtCharts', missing_package='PyQt6-Charts' - ) from error -elif PYSIDE2: - from PySide2.QtCharts import * - - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.QtCharts as __temp - import inspect - - for __name in inspect.getmembers(__temp.QtCharts): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - from PySide6.QtCharts import * - from PySide6 import QtCharts diff --git a/winpython/_vendor/qtpy/tests/QtConcurrent.py b/winpython/_vendor/qtpy/tests/QtConcurrent.py deleted file mode 100644 index ca14d42e..00000000 --- a/winpython/_vendor/qtpy/tests/QtConcurrent.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtConcurrent classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtConcurrent') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtConcurrent') -elif PYSIDE2: - from PySide2.QtConcurrent import * -elif PYSIDE6: - from PySide6.QtConcurrent import * diff --git a/winpython/_vendor/qtpy/tests/QtCore.py b/winpython/_vendor/qtpy/tests/QtCore.py deleted file mode 100644 index d87c4278..00000000 --- a/winpython/_vendor/qtpy/tests/QtCore.py +++ /dev/null @@ -1,123 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtCore classes and functions.""" -from typing import TYPE_CHECKING - -from . import PYQT6, PYQT5, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtCore import * - from PyQt5.QtCore import pyqtSignal as Signal - from PyQt5.QtCore import pyqtBoundSignal as SignalInstance - from PyQt5.QtCore import pyqtSlot as Slot - from PyQt5.QtCore import pyqtProperty as Property - from PyQt5.QtCore import QT_VERSION_STR as __version__ - - # For issue #153 and updated for issue #305 - from PyQt5.QtCore import QDate, QDateTime, QTime - QDate.toPython = lambda self, *args, **kwargs: self.toPyDate(*args, **kwargs) - QDateTime.toPython = lambda self, *args, **kwargs: self.toPyDateTime(*args, **kwargs) - QTime.toPython = lambda self, *args, **kwargs: self.toPyTime(*args, **kwargs) - - # Map missing methods on PyQt5 5.12 - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - - # Those are imported from `import *` - del pyqtSignal, pyqtBoundSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR - -elif PYQT6: - from PyQt6 import QtCore - from PyQt6.QtCore import * - from PyQt6.QtCore import pyqtSignal as Signal - from PyQt6.QtCore import pyqtBoundSignal as SignalInstance - from PyQt6.QtCore import pyqtSlot as Slot - from PyQt6.QtCore import pyqtProperty as Property - from PyQt6.QtCore import QT_VERSION_STR as __version__ - - # For issue #153 and updated for issue #305 - from PyQt6.QtCore import QDate, QDateTime, QTime - QDate.toPython = lambda self, *args, **kwargs: self.toPyDate(*args, **kwargs) - QDateTime.toPython = lambda self, *args, **kwargs: self.toPyDateTime(*args, **kwargs) - QTime.toPython = lambda self, *args, **kwargs: self.toPyTime(*args, **kwargs) - - # For issue #311 - # Seems like there is an error with sip. Without first - # trying to import `PyQt6.QtGui.Qt`, some functions like - # `PyQt6.QtCore.Qt.mightBeRichText` are missing. - if not TYPE_CHECKING: - try: - from PyQt6.QtGui import Qt - except ImportError: - pass - - # Map missing methods - QCoreApplication.exec_ = QCoreApplication.exec - QEventLoop.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QThread.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - - QLibraryInfo.location = QLibraryInfo.path - - # Those are imported from `import *` - del pyqtSignal, pyqtBoundSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR - - # Allow unscoped access for enums inside the QtCore module - from .enums_compat import promote_enums - promote_enums(QtCore) - del QtCore - - # Alias deprecated ItemDataRole enum values removed in Qt6 - Qt.BackgroundColorRole = Qt.ItemDataRole.BackgroundColorRole = Qt.BackgroundRole - Qt.TextColorRole = Qt.ItemDataRole.TextColorRole = Qt.ForegroundRole - # Alias for MiddleButton removed in PyQt6 but available in PyQt5, PySide2 and PySide6 - Qt.MidButton = Qt.MiddleButton - -elif PYSIDE2: - from PySide2.QtCore import * - - try: # may be limited to PySide-5.11a1 only - from PySide2.QtGui import QStringListModel - except Exception: - pass - - import PySide2.QtCore - __version__ = PySide2.QtCore.__version__ - - # Missing QtGui utility functions on Qt - if getattr(Qt, 'mightBeRichText', None) is None: - try: - from PySide2.QtGui import Qt as guiQt - Qt.mightBeRichText = guiQt.mightBeRichText - del guiQt - except ImportError: - # Fails with PySide2 5.12.0 - pass - -elif PYSIDE6: - from PySide6.QtCore import * - import PySide6.QtCore - __version__ = PySide6.QtCore.__version__ - - # Missing QtGui utility functions on Qt - if getattr(Qt, 'mightBeRichText', None) is None: - from PySide6.QtGui import Qt as guiQt - Qt.mightBeRichText = guiQt.mightBeRichText - del guiQt - - # Alias deprecated ItemDataRole enum values removed in Qt6 - Qt.BackgroundColorRole = Qt.ItemDataRole.BackgroundColorRole = Qt.BackgroundRole - Qt.TextColorRole = Qt.ItemDataRole.TextColorRole = Qt.ForegroundRole - Qt.MidButton = Qt.MiddleButton - - # Map DeprecationWarning methods - QCoreApplication.exec_ = QCoreApplication.exec - QEventLoop.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QThread.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QTextStreamManipulator.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QLibraryInfo.location = QLibraryInfo.path diff --git a/winpython/_vendor/qtpy/tests/QtDBus.py b/winpython/_vendor/qtpy/tests/QtDBus.py deleted file mode 100644 index 6d479fa5..00000000 --- a/winpython/_vendor/qtpy/tests/QtDBus.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDBus classes and functions.""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInOSError, -) - -if PYQT5: - from PyQt5.QtDBus import * -elif PYQT6: - from PyQt6.QtDBus import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtDBus') -elif PYSIDE6: - if sys.platform != 'win32': - from PySide6.QtDBus import * - else: - raise QtModuleNotInOSError(name='QtDBus') diff --git a/winpython/_vendor/qtpy/tests/QtDataVisualization.py b/winpython/_vendor/qtpy/tests/QtDataVisualization.py deleted file mode 100644 index 692430f1..00000000 --- a/winpython/_vendor/qtpy/tests/QtDataVisualization.py +++ /dev/null @@ -1,41 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDataVisualization classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtDataVisualization import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtDataVisualization', missing_package='PyQtDataVisualization' - ) from error -elif PYQT6: - try: - from PyQt6.QtDataVisualization import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtDataVisualization', - missing_package='PyQt6-DataVisualization', - ) from error -elif PYSIDE2: - # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-1026 - import PySide2.QtDataVisualization as __temp - import inspect - - for __name in inspect.getmembers(__temp.QtDataVisualization): - globals()[__name[0]] = __name[1] -elif PYSIDE6: - from PySide6.QtDataVisualization import * diff --git a/winpython/_vendor/qtpy/tests/QtDesigner.py b/winpython/_vendor/qtpy/tests/QtDesigner.py deleted file mode 100644 index 969d8480..00000000 --- a/winpython/_vendor/qtpy/tests/QtDesigner.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtDesigner classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtDesigner import * -elif PYQT6: - from PyQt6.QtDesigner import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtDesigner') -elif PYSIDE6: - from PySide6.QtDesigner import * diff --git a/winpython/_vendor/qtpy/tests/QtGui.py b/winpython/_vendor/qtpy/tests/QtGui.py deleted file mode 100644 index 662b84cd..00000000 --- a/winpython/_vendor/qtpy/tests/QtGui.py +++ /dev/null @@ -1,74 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtGui classes and functions.""" - -from . import PYQT6, PYQT5, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtGui import * -elif PYQT6: - from PyQt6 import QtGui - from PyQt6.QtGui import * - from PyQt6.QtOpenGL import * - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - QFontMetricsF.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - - # Map missing/renamed methods - QDrag.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QGuiApplication.exec_ = QGuiApplication.exec - QTextDocument.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - - # Allow unscoped access for enums inside the QtGui module - from .enums_compat import promote_enums - promote_enums(QtGui) - del QtGui -elif PYSIDE2: - from PySide2.QtGui import * - if hasattr(QFontMetrics, 'horizontalAdvance'): - # Needed to prevent raising a DeprecationWarning when using QFontMetrics.width - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtGui import * - from PySide6.QtOpenGL import * - QFontMetrics.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - QFontMetricsF.width = lambda self, *args, **kwargs: self.horizontalAdvance(*args, **kwargs) - - # Map DeprecationWarning methods - QDrag.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QGuiApplication.exec_ = QGuiApplication.exec - -if PYSIDE2 or PYSIDE6: - # PySide{2,6} do not accept the `mode` keyword argument in - # QTextCursor.movePosition() even though it is a valid optional argument - # as per C++ API. Fix this by monkeypatching. - # - # Notes: - # - # * The `mode` argument is called `arg__2` in PySide{2,6} as per - # QTextCursor.movePosition.__doc__ and __signature__. Using `arg__2` as - # keyword argument works as intended, so does using a positional - # argument. Tested with PySide2 5.15.0, 5.15.2.1 and 5.15.3 and PySide6 - # 6.3.0; older version, down to PySide 1, are probably affected as well [1]. - # - # * PySide2 5.15.0 and 5.15.2.1 silently ignore invalid keyword arguments, - # i.e. passing the `mode` keyword argument has no effect and doesn’t - # raise an exception. Older versions, down to PySide 1, are probably - # affected as well [1]. At least PySide2 5.15.3 and PySide6 6.3.0 raise an - # exception when `mode` or any other invalid keyword argument is passed. - # - # [1] https://bugreports.qt.io/browse/PYSIDE-185 - movePosition = QTextCursor.movePosition - def movePositionPatched( - self, - operation: QTextCursor.MoveOperation, - mode: QTextCursor.MoveMode = QTextCursor.MoveAnchor, - n: int = 1, - ) -> bool: - return movePosition(self, operation, mode, n) - QTextCursor.movePosition = movePositionPatched diff --git a/winpython/_vendor/qtpy/tests/QtHelp.py b/winpython/_vendor/qtpy/tests/QtHelp.py deleted file mode 100644 index d0e2babb..00000000 --- a/winpython/_vendor/qtpy/tests/QtHelp.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""QtHelp Wrapper.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtHelp import * -elif PYQT6: - from PyQt6.QtHelp import * -elif PYSIDE2: - from PySide2.QtHelp import * -elif PYSIDE6: - from PySide6.QtHelp import * diff --git a/winpython/_vendor/qtpy/tests/QtLocation.py b/winpython/_vendor/qtpy/tests/QtLocation.py deleted file mode 100644 index 1f7132dc..00000000 --- a/winpython/_vendor/qtpy/tests/QtLocation.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtLocation classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtLocation import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtLocation') -elif PYSIDE2: - from PySide2.QtLocation import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtLocation') diff --git a/winpython/_vendor/qtpy/tests/QtMacExtras.py b/winpython/_vendor/qtpy/tests/QtMacExtras.py deleted file mode 100644 index d495c1eb..00000000 --- a/winpython/_vendor/qtpy/tests/QtMacExtras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides classes and functions specific to macOS and iOS operating systems""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'darwin': - if PYQT5: - from PyQt5.QtMacExtras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtMacExtras') - elif PYSIDE2: - from PySide2.QtMacExtras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtMacExtras') -else: - raise QtModuleNotInOSError(name='QtMacExtras') diff --git a/winpython/_vendor/qtpy/tests/QtMultimedia.py b/winpython/_vendor/qtpy/tests/QtMultimedia.py deleted file mode 100644 index 7403e64d..00000000 --- a/winpython/_vendor/qtpy/tests/QtMultimedia.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides low-level multimedia functionality.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtMultimedia import * -elif PYQT6: - from PyQt6.QtMultimedia import * -elif PYSIDE2: - from PySide2.QtMultimedia import * -elif PYSIDE6: - from PySide6.QtMultimedia import * diff --git a/winpython/_vendor/qtpy/tests/QtMultimediaWidgets.py b/winpython/_vendor/qtpy/tests/QtMultimediaWidgets.py deleted file mode 100644 index 69af111a..00000000 --- a/winpython/_vendor/qtpy/tests/QtMultimediaWidgets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtMultimediaWidgets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtMultimediaWidgets import * -elif PYQT6: - from PyQt6.QtMultimediaWidgets import * -elif PYSIDE2: - from PySide2.QtMultimediaWidgets import * -elif PYSIDE6: - from PySide6.QtMultimediaWidgets import * diff --git a/winpython/_vendor/qtpy/tests/QtNetwork.py b/winpython/_vendor/qtpy/tests/QtNetwork.py deleted file mode 100644 index 2c4e5476..00000000 --- a/winpython/_vendor/qtpy/tests/QtNetwork.py +++ /dev/null @@ -1,20 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNetwork classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtNetwork import * -elif PYQT6: - from PyQt6.QtNetwork import * -elif PYSIDE2: - from PySide2.QtNetwork import * -elif PYSIDE6: - from PySide6.QtNetwork import * diff --git a/winpython/_vendor/qtpy/tests/QtNetworkAuth.py b/winpython/_vendor/qtpy/tests/QtNetworkAuth.py deleted file mode 100644 index abf7526e..00000000 --- a/winpython/_vendor/qtpy/tests/QtNetworkAuth.py +++ /dev/null @@ -1,36 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNetworkAuth classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, - QtBindingMissingModuleError, -) - -if PYQT5: - try: - from PyQt5.QtNetworkAuth import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtNetworkAuth', missing_package='PyQtNetworkAuth' - ) from error -elif PYQT6: - try: - from PyQt6.QtNetworkAuth import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtNetworkAuth', missing_package='PyQt6-NetworkAuth' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtNetworkAuth') -elif PYSIDE6: - from PySide6.QtNetworkAuth import * diff --git a/winpython/_vendor/qtpy/tests/QtNfc.py b/winpython/_vendor/qtpy/tests/QtNfc.py deleted file mode 100644 index 38007248..00000000 --- a/winpython/_vendor/qtpy/tests/QtNfc.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtNfc classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtNfc import * -elif PYQT6: - from PyQt6.QtNfc import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtNfc') -elif PYSIDE6: - from PySide6.QtNfc import * diff --git a/winpython/_vendor/qtpy/tests/QtOpenGL.py b/winpython/_vendor/qtpy/tests/QtOpenGL.py deleted file mode 100644 index 345853a1..00000000 --- a/winpython/_vendor/qtpy/tests/QtOpenGL.py +++ /dev/null @@ -1,67 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtOpenGL classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtOpenGL import * - from PyQt5.QtGui import ( - QOpenGLBuffer, - QOpenGLFramebufferObject, - QOpenGLFramebufferObjectFormat, - QOpenGLShader, - QOpenGLShaderProgram, - QOpenGLContext, - QOpenGLContextGroup, - QOpenGLDebugLogger, - QOpenGLDebugMessage, - QOpenGLPixelTransferOptions, - QOpenGLTexture, - QOpenGLTextureBlitter, - QOpenGLVersionProfile, - QOpenGLVertexArrayObject, - QOpenGLWindow, - ) - - # These are not present on some architectures such as armhf - try: - from PyQt5.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery - except ImportError: - pass -elif PYQT6: - from PyQt6.QtOpenGL import * - from PyQt6.QtGui import QOpenGLContext, QOpenGLContextGroup -elif PYSIDE6: - from PySide6.QtOpenGL import * - from PySide6.QtGui import QOpenGLContext, QOpenGLContextGroup -elif PYSIDE2: - from PySide2.QtOpenGL import * - from PySide2.QtGui import ( - QOpenGLBuffer, - QOpenGLFramebufferObject, - QOpenGLFramebufferObjectFormat, - QOpenGLShader, - QOpenGLShaderProgram, - QOpenGLContext, - QOpenGLContextGroup, - QOpenGLDebugLogger, - QOpenGLDebugMessage, - QOpenGLPixelTransferOptions, - QOpenGLTexture, - QOpenGLTextureBlitter, - QOpenGLVersionProfile, - QOpenGLVertexArrayObject, - QOpenGLWindow, - ) - - # These are not present on some architectures such as armhf - try: - from PySide2.QtGui import QOpenGLTimeMonitor, QOpenGLTimerQuery - except ImportError: - pass diff --git a/winpython/_vendor/qtpy/tests/QtOpenGLWidgets.py b/winpython/_vendor/qtpy/tests/QtOpenGLWidgets.py deleted file mode 100644 index fb9fa62a..00000000 --- a/winpython/_vendor/qtpy/tests/QtOpenGLWidgets.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtOpenGLWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtOpenGLWidgets') -elif PYQT6: - from PyQt6.QtOpenGLWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtOpenGLWidgets') -elif PYSIDE6: - from PySide6.QtOpenGLWidgets import * diff --git a/winpython/_vendor/qtpy/tests/QtPdf.py b/winpython/_vendor/qtpy/tests/QtPdf.py deleted file mode 100644 index 3a6796ca..00000000 --- a/winpython/_vendor/qtpy/tests/QtPdf.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPdf classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtPdf') -elif PYQT6: - # Available with version >=6.4.0 - from PyQt6.QtPdf import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPdf') -elif PYSIDE6: - # Available with version >=6.4.0 - from PySide6.QtPdf import * diff --git a/winpython/_vendor/qtpy/tests/QtPdfWidgets.py b/winpython/_vendor/qtpy/tests/QtPdfWidgets.py deleted file mode 100644 index 1b0a2e11..00000000 --- a/winpython/_vendor/qtpy/tests/QtPdfWidgets.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPdfWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtPdfWidgets') -elif PYQT6: - # Available with version >=6.4.0 - from PyQt6.QtPdfWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPdfWidgets') -elif PYSIDE6: - # Available with version >=6.4.0 - from PySide6.QtPdfWidgets import * diff --git a/winpython/_vendor/qtpy/tests/QtPositioning.py b/winpython/_vendor/qtpy/tests/QtPositioning.py deleted file mode 100644 index 5083cee7..00000000 --- a/winpython/_vendor/qtpy/tests/QtPositioning.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright 2020 Antonio Valentino -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPositioning classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtPositioning import * -elif PYQT6: - from PyQt6.QtPositioning import * -elif PYSIDE2: - from PySide2.QtPositioning import * -elif PYSIDE6: - from PySide6.QtPositioning import * diff --git a/winpython/_vendor/qtpy/tests/QtPrintSupport.py b/winpython/_vendor/qtpy/tests/QtPrintSupport.py deleted file mode 100644 index 263747d2..00000000 --- a/winpython/_vendor/qtpy/tests/QtPrintSupport.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPrintSupport classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtPrintSupport import * -elif PYQT6: - from PyQt6.QtPrintSupport import * - QPageSetupDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintPreviewWidget.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtPrintSupport import * - # Map DeprecationWarning methods - QPageSetupDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QPrintDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE2: - from PySide2.QtPrintSupport import * diff --git a/winpython/_vendor/qtpy/tests/QtPurchasing.py b/winpython/_vendor/qtpy/tests/QtPurchasing.py deleted file mode 100644 index 00141a25..00000000 --- a/winpython/_vendor/qtpy/tests/QtPurchasing.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtPurchasing classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtPurchasing import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtPurchasing', missing_package='PyQtPurchasing' - ) from error -elif PYQT6: - raise QtBindingMissingModuleError(name='QtPurchasing') -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtPurchasing') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtPurchasing') diff --git a/winpython/_vendor/qtpy/tests/QtQml.py b/winpython/_vendor/qtpy/tests/QtQml.py deleted file mode 100644 index 9d07f0e8..00000000 --- a/winpython/_vendor/qtpy/tests/QtQml.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQml classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtQml import * -elif PYQT6: - from PyQt6.QtQml import * -elif PYSIDE6: - from PySide6.QtQml import * -elif PYSIDE2: - from PySide2.QtQml import * diff --git a/winpython/_vendor/qtpy/tests/QtQuick.py b/winpython/_vendor/qtpy/tests/QtQuick.py deleted file mode 100644 index 7f140cb1..00000000 --- a/winpython/_vendor/qtpy/tests/QtQuick.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuick classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtQuick import * -elif PYQT6: - from PyQt6.QtQuick import * -elif PYSIDE6: - from PySide6.QtQuick import * -elif PYSIDE2: - from PySide2.QtQuick import * diff --git a/winpython/_vendor/qtpy/tests/QtQuick3D.py b/winpython/_vendor/qtpy/tests/QtQuick3D.py deleted file mode 100644 index eeb0a60c..00000000 --- a/winpython/_vendor/qtpy/tests/QtQuick3D.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuick3D classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtQuick3D import * -elif PYQT6: - from PyQt6.QtQuick3D import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtQuick3D') -elif PYSIDE6: - from PySide6.QtQuick3D import * diff --git a/winpython/_vendor/qtpy/tests/QtQuickControls2.py b/winpython/_vendor/qtpy/tests/QtQuickControls2.py deleted file mode 100644 index 743aa5d4..00000000 --- a/winpython/_vendor/qtpy/tests/QtQuickControls2.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuickControls2 classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtQuickControls2') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtQuickControls2') -elif PYSIDE2: - from PySide2.QtQuickControls2 import * -elif PYSIDE6: - from PySide6.QtQuickControls2 import * diff --git a/winpython/_vendor/qtpy/tests/QtQuickWidgets.py b/winpython/_vendor/qtpy/tests/QtQuickWidgets.py deleted file mode 100644 index 4ed4a21c..00000000 --- a/winpython/_vendor/qtpy/tests/QtQuickWidgets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtQuickWidgets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtQuickWidgets import * -elif PYQT6: - from PyQt6.QtQuickWidgets import * -elif PYSIDE6: - from PySide6.QtQuickWidgets import * -elif PYSIDE2: - from PySide2.QtQuickWidgets import * diff --git a/winpython/_vendor/qtpy/tests/QtRemoteObjects.py b/winpython/_vendor/qtpy/tests/QtRemoteObjects.py deleted file mode 100644 index 1035586b..00000000 --- a/winpython/_vendor/qtpy/tests/QtRemoteObjects.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtRemoteObjects classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtRemoteObjects import * -elif PYQT6: - from PyQt6.QtRemoteObjects import * -elif PYSIDE6: - from PySide6.QtRemoteObjects import * -elif PYSIDE2: - from PySide2.QtRemoteObjects import * diff --git a/winpython/_vendor/qtpy/tests/QtScxml.py b/winpython/_vendor/qtpy/tests/QtScxml.py deleted file mode 100644 index 81a9ac13..00000000 --- a/winpython/_vendor/qtpy/tests/QtScxml.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtScxml classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtScxml') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtScxml') -elif PYSIDE2: - from PySide2.QtScxml import * -elif PYSIDE6: - from PySide6.QtScxml import * diff --git a/winpython/_vendor/qtpy/tests/QtSensors.py b/winpython/_vendor/qtpy/tests/QtSensors.py deleted file mode 100644 index 25b29190..00000000 --- a/winpython/_vendor/qtpy/tests/QtSensors.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSensors classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSensors import * -elif PYQT6: - from PyQt6.QtSensors import * -elif PYSIDE6: - from PySide6.QtSensors import * -elif PYSIDE2: - from PySide2.QtSensors import * diff --git a/winpython/_vendor/qtpy/tests/QtSerialPort.py b/winpython/_vendor/qtpy/tests/QtSerialPort.py deleted file mode 100644 index 878c35b1..00000000 --- a/winpython/_vendor/qtpy/tests/QtSerialPort.py +++ /dev/null @@ -1,20 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2020 Marcin Stano -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSerialPort classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSerialPort import * -elif PYQT6: - from PyQt6.QtSerialPort import * -elif PYSIDE6: - from PySide6.QtSerialPort import * -elif PYSIDE2: - from PySide2.QtSerialPort import * diff --git a/winpython/_vendor/qtpy/tests/QtSql.py b/winpython/_vendor/qtpy/tests/QtSql.py deleted file mode 100644 index 5f7395b8..00000000 --- a/winpython/_vendor/qtpy/tests/QtSql.py +++ /dev/null @@ -1,26 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSql classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtSql import * -elif PYQT6: - from PyQt6.QtSql import * - QSqlDatabase.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlQuery.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlResult.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE6: - from PySide6.QtSql import * - # Map DeprecationWarning methods - QSqlDatabase.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlQuery.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QSqlResult.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) -elif PYSIDE2: - from PySide2.QtSql import * diff --git a/winpython/_vendor/qtpy/tests/QtStateMachine.py b/winpython/_vendor/qtpy/tests/QtStateMachine.py deleted file mode 100644 index 4afbcf49..00000000 --- a/winpython/_vendor/qtpy/tests/QtStateMachine.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtStateMachine classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtStateMachine') -elif PYSIDE6: - from PySide6.QtStateMachine import * diff --git a/winpython/_vendor/qtpy/tests/QtSvg.py b/winpython/_vendor/qtpy/tests/QtSvg.py deleted file mode 100644 index 0ee4f9e1..00000000 --- a/winpython/_vendor/qtpy/tests/QtSvg.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSvg classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtSvg import * -elif PYQT6: - from PyQt6.QtSvg import * -elif PYSIDE2: - from PySide2.QtSvg import * -elif PYSIDE6: - from PySide6.QtSvg import * diff --git a/winpython/_vendor/qtpy/tests/QtSvgWidgets.py b/winpython/_vendor/qtpy/tests/QtSvgWidgets.py deleted file mode 100644 index 07eedb07..00000000 --- a/winpython/_vendor/qtpy/tests/QtSvgWidgets.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtSvgWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtSvgWidgets') -elif PYQT6: - from PyQt6.QtSvgWidgets import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtSvgWidgets') -elif PYSIDE6: - from PySide6.QtSvgWidgets import * diff --git a/winpython/_vendor/qtpy/tests/QtTest.py b/winpython/_vendor/qtpy/tests/QtTest.py deleted file mode 100644 index 3be7f95a..00000000 --- a/winpython/_vendor/qtpy/tests/QtTest.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtTest and functions""" - -from . import PYQT5, PYQT6, PYSIDE6, PYSIDE2 - -if PYQT5: - from PyQt5.QtTest import * -elif PYQT6: - from PyQt6 import QtTest - from PyQt6.QtTest import * - - # Allow unscoped access for enums inside the QtTest module - from .enums_compat import promote_enums - - promote_enums(QtTest) - del QtTest -elif PYSIDE2: - from PySide2.QtTest import * -elif PYSIDE6: - from PySide6.QtTest import * diff --git a/winpython/_vendor/qtpy/tests/QtTextToSpeech.py b/winpython/_vendor/qtpy/tests/QtTextToSpeech.py deleted file mode 100644 index cd978328..00000000 --- a/winpython/_vendor/qtpy/tests/QtTextToSpeech.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtTextToSpeech classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtTextToSpeech import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtTextToSpeech') -elif PYSIDE2: - from PySide2.QtTextToSpeech import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtTextToSpeech') diff --git a/winpython/_vendor/qtpy/tests/QtUiTools.py b/winpython/_vendor/qtpy/tests/QtUiTools.py deleted file mode 100644 index 5104a645..00000000 --- a/winpython/_vendor/qtpy/tests/QtUiTools.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtUiTools classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtUiTools') -elif PYQT6: - raise QtBindingMissingModuleError(name='QtUiTools') -elif PYSIDE2: - from PySide2.QtUiTools import * -elif PYSIDE6: - from PySide6.QtUiTools import * diff --git a/winpython/_vendor/qtpy/tests/QtWebChannel.py b/winpython/_vendor/qtpy/tests/QtWebChannel.py deleted file mode 100644 index b2c35fff..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebChannel.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebChannel classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWebChannel import * -elif PYQT6: - from PyQt6.QtWebChannel import * -elif PYSIDE2: - from PySide2.QtWebChannel import * -elif PYSIDE6: - from PySide6.QtWebChannel import * diff --git a/winpython/_vendor/qtpy/tests/QtWebEngine.py b/winpython/_vendor/qtpy/tests/QtWebEngine.py deleted file mode 100644 index c5c80d52..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebEngine.py +++ /dev/null @@ -1,32 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngine classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtWebEngine import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngine', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtWebEngine') -elif PYSIDE2: - from PySide2.QtWebEngine import * -elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtWebEngine') diff --git a/winpython/_vendor/qtpy/tests/QtWebEngineCore.py b/winpython/_vendor/qtpy/tests/QtWebEngineCore.py deleted file mode 100644 index 76efbbfb..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebEngineCore.py +++ /dev/null @@ -1,35 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineCore classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - -if PYQT5: - try: - from PyQt5.QtWebEngineCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineCore', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - try: - from PyQt6.QtWebEngineCore import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineCore', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - from PySide2.QtWebEngineCore import * -elif PYSIDE6: - from PySide6.QtWebEngineCore import * diff --git a/winpython/_vendor/qtpy/tests/QtWebEngineQuick.py b/winpython/_vendor/qtpy/tests/QtWebEngineQuick.py deleted file mode 100644 index 659834a3..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebEngineQuick.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineQuick classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='QtWebEngineQuick') -elif PYQT6: - try: - from PyQt6.QtWebEngineQuick import * - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineQuick', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - raise QtBindingMissingModuleError(name='QtWebEngineQuick') -elif PYSIDE6: - from PySide6.QtWebEngineQuick import * diff --git a/winpython/_vendor/qtpy/tests/QtWebEngineWidgets.py b/winpython/_vendor/qtpy/tests/QtWebEngineWidgets.py deleted file mode 100644 index 05a18378..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebEngineWidgets.py +++ /dev/null @@ -1,63 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebEngineWidgets classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInstalledError, -) - - -# To test if we are using WebEngine or WebKit -# NOTE: This constant is imported by other projects (e.g. Spyder), so please -# don't remove it. -WEBENGINE = True - - -if PYQT5: - try: - from PyQt5.QtWebEngineWidgets import QWebEnginePage - from PyQt5.QtWebEngineWidgets import QWebEngineView - from PyQt5.QtWebEngineWidgets import QWebEngineSettings - from PyQt5.QtWebEngineWidgets import QWebEngineScript - - # Based on the work at https://github.com/spyder-ide/qtpy/pull/203 - from PyQt5.QtWebEngineWidgets import QWebEngineProfile - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineWidgets', missing_package='PyQtWebEngine' - ) from error -elif PYQT6: - try: - from PyQt6.QtWebEngineWidgets import * - from PyQt6.QtWebEngineCore import QWebEnginePage - from PyQt6.QtWebEngineCore import QWebEngineSettings - from PyQt6.QtWebEngineCore import QWebEngineProfile - from PyQt6.QtWebEngineCore import QWebEngineScript - except ModuleNotFoundError as error: - raise QtModuleNotInstalledError( - name='QtWebEngineWidgets', missing_package='PyQt6-WebEngine' - ) from error -elif PYSIDE2: - from PySide2.QtWebEngineWidgets import QWebEnginePage - from PySide2.QtWebEngineWidgets import QWebEngineView - from PySide2.QtWebEngineWidgets import QWebEngineSettings - from PySide2.QtWebEngineWidgets import QWebEngineScript - - # Based on the work at https://github.com/spyder-ide/qtpy/pull/203 - from PySide2.QtWebEngineWidgets import QWebEngineProfile -elif PYSIDE6: - from PySide6.QtWebEngineWidgets import * - from PySide6.QtWebEngineCore import QWebEnginePage - from PySide6.QtWebEngineCore import QWebEngineSettings - from PySide6.QtWebEngineCore import QWebEngineProfile - from PySide6.QtWebEngineCore import QWebEngineScript diff --git a/winpython/_vendor/qtpy/tests/QtWebSockets.py b/winpython/_vendor/qtpy/tests/QtWebSockets.py deleted file mode 100644 index a9bd33d9..00000000 --- a/winpython/_vendor/qtpy/tests/QtWebSockets.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtWebSockets classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWebSockets import * -elif PYQT6: - from PyQt6.QtWebSockets import * -elif PYSIDE2: - from PySide2.QtWebSockets import * -elif PYSIDE6: - from PySide6.QtWebSockets import * diff --git a/winpython/_vendor/qtpy/tests/QtWidgets.py b/winpython/_vendor/qtpy/tests/QtWidgets.py deleted file mode 100644 index 1e4a0340..00000000 --- a/winpython/_vendor/qtpy/tests/QtWidgets.py +++ /dev/null @@ -1,54 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2014-2015 Colin Duquesnoy -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides widget classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtWidgets import * -elif PYQT6: - from PyQt6 import QtWidgets - from PyQt6.QtWidgets import * - from PyQt6.QtGui import QAction, QActionGroup, QShortcut, QFileSystemModel, QUndoCommand - from PyQt6.QtOpenGLWidgets import QOpenGLWidget - - # Map missing/renamed methods - QTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QTextEdit.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - QPlainTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QPlainTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QPlainTextEdit.print_ = lambda self, *args, **kwargs: self.print(*args, **kwargs) - QApplication.exec_ = QApplication.exec - QDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QMenu.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QLineEdit.getTextMargins = lambda self: (self.textMargins().left(), self.textMargins().top(), self.textMargins().right(), self.textMargins().bottom()) - - # Allow unscoped access for enums inside the QtWidgets module - from .enums_compat import promote_enums - promote_enums(QtWidgets) - del QtWidgets -elif PYSIDE2: - from PySide2.QtWidgets import * -elif PYSIDE6: - from PySide6.QtWidgets import * - from PySide6.QtGui import QAction, QActionGroup, QShortcut, QUndoCommand - from PySide6.QtOpenGLWidgets import QOpenGLWidget - - # Map missing/renamed methods - QTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QPlainTextEdit.setTabStopWidth = lambda self, *args, **kwargs: self.setTabStopDistance(*args, **kwargs) - QPlainTextEdit.tabStopWidth = lambda self, *args, **kwargs: self.tabStopDistance(*args, **kwargs) - QLineEdit.getTextMargins = lambda self: (self.textMargins().left(), self.textMargins().top(), self.textMargins().right(), self.textMargins().bottom()) - - # Map DeprecationWarning methods - QApplication.exec_ = QApplication.exec - QDialog.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) - QMenu.exec_ = lambda self, *args, **kwargs: self.exec(*args, **kwargs) diff --git a/winpython/_vendor/qtpy/tests/QtWinExtras.py b/winpython/_vendor/qtpy/tests/QtWinExtras.py deleted file mode 100644 index 0396f953..00000000 --- a/winpython/_vendor/qtpy/tests/QtWinExtras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Windows-specific utilities""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'win32': - if PYQT5: - from PyQt5.QtWinExtras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtWinExtras') - elif PYSIDE2: - from PySide2.QtWinExtras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtWinExtras') -else: - raise QtModuleNotInOSError(name='QtWinExtras') diff --git a/winpython/_vendor/qtpy/tests/QtX11Extras.py b/winpython/_vendor/qtpy/tests/QtX11Extras.py deleted file mode 100644 index 51247c13..00000000 --- a/winpython/_vendor/qtpy/tests/QtX11Extras.py +++ /dev/null @@ -1,31 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides Linux-specific utilities""" - -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtModuleNotInQtVersionError, - QtModuleNotInOSError, -) - -if sys.platform == 'linux': - if PYQT5: - from PyQt5.QtX11Extras import * - elif PYQT6: - raise QtModuleNotInQtVersionError(name='QtX11Extras') - elif PYSIDE2: - from PySide2.QtX11Extras import * - elif PYSIDE6: - raise QtModuleNotInQtVersionError(name='QtX11Extras') -else: - raise QtModuleNotInOSError(name='QtX11Extras') diff --git a/winpython/_vendor/qtpy/tests/QtXml.py b/winpython/_vendor/qtpy/tests/QtXml.py deleted file mode 100644 index 5f1e3b82..00000000 --- a/winpython/_vendor/qtpy/tests/QtXml.py +++ /dev/null @@ -1,19 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtXml classes and functions.""" - -from . import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - -if PYQT5: - from PyQt5.QtXml import * -elif PYQT6: - from PyQt6.QtXml import * -elif PYSIDE2: - from PySide2.QtXml import * -elif PYSIDE6: - from PySide6.QtXml import * diff --git a/winpython/_vendor/qtpy/tests/QtXmlPatterns.py b/winpython/_vendor/qtpy/tests/QtXmlPatterns.py deleted file mode 100644 index 5e63f448..00000000 --- a/winpython/_vendor/qtpy/tests/QtXmlPatterns.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides QtXmlPatterns classes and functions.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.QtXmlPatterns import * -elif PYQT6: - raise QtBindingMissingModuleError(name='QtXmlPatterns') -elif PYSIDE2: - from PySide2.QtXmlPatterns import * -elif PYSIDE6: - raise QtBindingMissingModuleError(name='QtXmlPatterns') diff --git a/winpython/_vendor/qtpy/tests/__init__.py b/winpython/_vendor/qtpy/tests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/winpython/_vendor/qtpy/tests/__main__.py b/winpython/_vendor/qtpy/tests/__main__.py deleted file mode 100644 index a8f993c0..00000000 --- a/winpython/_vendor/qtpy/tests/__main__.py +++ /dev/null @@ -1,18 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The QtPy Contributors -# -# Released under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Dev CLI entry point for QtPy, a compat layer for the Python Qt bindings.""" - -import qtpy.cli - - -def main(): - return qtpy.cli.main() - - -if __name__ == "__main__": - main() diff --git a/winpython/_vendor/qtpy/tests/cli.py b/winpython/_vendor/qtpy/tests/cli.py deleted file mode 100644 index 3a629970..00000000 --- a/winpython/_vendor/qtpy/tests/cli.py +++ /dev/null @@ -1,88 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The QtPy Contributors -# -# Released under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provide a CLI to allow configuring developer settings, including mypy.""" - -# Standard library imports -import argparse -import textwrap - - -def print_version(): - """Print the current version of the package.""" - import qtpy - print('QtPy version', qtpy.__version__) - - -def generate_mypy_args(): - """Generate a string with always-true/false args to pass to mypy.""" - options = {False: '--always-false', True: '--always-true'} - - import qtpy - - apis_active = {name: qtpy.API == name for name in qtpy.API_NAMES} - mypy_args = ' '.join( - f'{options[is_active]}={name.upper()}' - for name, is_active in apis_active.items() - ) - return mypy_args - - -def print_mypy_args(): - """Print the generated mypy args to stdout.""" - print(generate_mypy_args()) - - -def generate_arg_parser(): - """Generate the argument parser for the dev CLI for QtPy.""" - parser = argparse.ArgumentParser( - description='Features to support development with QtPy.', - ) - parser.set_defaults(func=parser.print_help) - - parser.add_argument( - '--version', action='store_const', dest='func', const=print_version, - help='If passed, will print the version and exit') - - cli_subparsers = parser.add_subparsers( - title='Subcommands', help='Subcommand to run', metavar='Subcommand') - - # Parser for the MyPy args subcommand - mypy_args_parser = cli_subparsers.add_parser( - name='mypy-args', - help='Generate command line arguments for using mypy with QtPy.', - formatter_class=argparse.RawTextHelpFormatter, - description=textwrap.dedent( - """ - Generate command line arguments for using mypy with QtPy. - - This will generate strings similar to the following - which help guide mypy through which library QtPy would have used - so that mypy can get the proper underlying type hints. - - --always-false=PYQT5 --always-false=PYQT6 --always-true=PYSIDE2 --always-false=PYSIDE6 - - It can be used as follows on Bash or a similar shell: - - mypy --package mypackage $(qtpy mypy-args) - """ - ), - ) - mypy_args_parser.set_defaults(func=print_mypy_args) - - return parser - - -def main(args=None): - """Run the development CLI for QtPy.""" - parser = generate_arg_parser() - parsed_args = parser.parse_args(args=args) - - reserved_params = {'func'} - cleaned_args = {key: value for key, value in vars(parsed_args).items() - if key not in reserved_params} - parsed_args.func(**cleaned_args) diff --git a/winpython/_vendor/qtpy/tests/compat.py b/winpython/_vendor/qtpy/tests/compat.py deleted file mode 100644 index 325c0ddb..00000000 --- a/winpython/_vendor/qtpy/tests/compat.py +++ /dev/null @@ -1,149 +0,0 @@ -# -# Copyright © 2009- The Spyder Development Team -# Licensed under the terms of the MIT License - -""" -Compatibility functions -""" -import sys - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, -) - -from .QtWidgets import QFileDialog - - -TEXT_TYPES = (str,) - - -def is_text_string(obj): - """Return True if `obj` is a text string, False if it is anything else, - like binary data.""" - return isinstance(obj, str) - - -def to_text_string(obj, encoding=None): - """Convert `obj` to (unicode) text string""" - if encoding is None: - return str(obj) - elif isinstance(obj, str): - # In case this function is not used properly, this could happen - return obj - else: - return str(obj, encoding) - - -# ============================================================================= -# QVariant conversion utilities -# ============================================================================= -PYQT_API_1 = False -def to_qvariant(obj=None): # analysis:ignore - """Convert Python object to QVariant - This is a transitional function from PyQt API#1 (QVariant exist) - to PyQt API#2 and Pyside (QVariant does not exist)""" - return obj - -def from_qvariant(qobj=None, pytype=None): # analysis:ignore - """Convert QVariant object to Python object - This is a transitional function from PyQt API #1 (QVariant exist) - to PyQt API #2 and Pyside (QVariant does not exist)""" - return qobj - - -# ============================================================================= -# Wrappers around QFileDialog static methods -# ============================================================================= -def getexistingdirectory(parent=None, caption='', basedir='', - options=QFileDialog.ShowDirsOnly): - """Wrapper around QtGui.QFileDialog.getExistingDirectory static method - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - # Calling QFileDialog static method - if sys.platform == "win32": - # On Windows platforms: redirect standard outputs - _temp1, _temp2 = sys.stdout, sys.stderr - sys.stdout, sys.stderr = None, None - try: - result = QFileDialog.getExistingDirectory(parent, caption, basedir, - options) - finally: - if sys.platform == "win32": - # On Windows platforms: restore standard outputs - sys.stdout, sys.stderr = _temp1, _temp2 - if not is_text_string(result): - # PyQt API #1 - result = to_text_string(result) - return result - - -def _qfiledialog_wrapper(attr, parent=None, caption='', basedir='', - filters='', selectedfilter='', options=None): - if options is None: - options = QFileDialog.Option(0) - - func = getattr(QFileDialog, attr) - - # Calling QFileDialog static method - if sys.platform == "win32": - # On Windows platforms: redirect standard outputs - _temp1, _temp2 = sys.stdout, sys.stderr - sys.stdout, sys.stderr = None, None - result = func(parent, caption, basedir, filters, selectedfilter, options) - if sys.platform == "win32": - # On Windows platforms: restore standard outputs - sys.stdout, sys.stderr = _temp1, _temp2 - - output, selectedfilter = result - - # Always returns the tuple (output, selectedfilter) - return output, selectedfilter - - -def getopenfilename(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getOpenFileName static method - Returns a tuple (filename, selectedfilter) -- when dialog box is canceled, - returns a tuple of empty strings - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getOpenFileName', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - - -def getopenfilenames(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getOpenFileNames static method - Returns a tuple (filenames, selectedfilter) -- when dialog box is canceled, - returns a tuple (empty list, empty string) - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getOpenFileNames', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - - -def getsavefilename(parent=None, caption='', basedir='', filters='', - selectedfilter='', options=None): - """Wrapper around QtGui.QFileDialog.getSaveFileName static method - Returns a tuple (filename, selectedfilter) -- when dialog box is canceled, - returns a tuple of empty strings - Compatible with PyQt >=v4.4 (API #1 and #2) and PySide >=v1.0""" - return _qfiledialog_wrapper('getSaveFileName', parent=parent, - caption=caption, basedir=basedir, - filters=filters, selectedfilter=selectedfilter, - options=options) - -# ============================================================================= -def isalive(object): - """Wrapper around sip.isdeleted and shiboken.isValid which tests whether - an object is currently alive.""" - if PYQT5 or PYQT6: - from . import sip - return not sip.isdeleted(object) - elif PYSIDE2 or PYSIDE6: - from . import shiboken - return shiboken.isValid(object) diff --git a/winpython/_vendor/qtpy/tests/conftest.py b/winpython/_vendor/qtpy/tests/conftest.py deleted file mode 100644 index f9b06f2b..00000000 --- a/winpython/_vendor/qtpy/tests/conftest.py +++ /dev/null @@ -1,79 +0,0 @@ -import os - -import pytest - - -def pytest_configure(config): - """Configure the test environment.""" - - if 'USE_QT_API' in os.environ: - os.environ['QT_API'] = os.environ['USE_QT_API'].lower() - - # We need to import qtpy here to make sure that the API versions get set - # straight away. - import qtpy - - -def pytest_report_header(config): - """Insert a customized header into the test report.""" - - versions = os.linesep - versions += 'PyQt5: ' - - try: - from PyQt5 import Qt - versions += f"PyQt: {Qt.PYQT_VERSION_STR} - Qt: {Qt.QT_VERSION_STR}" - except ImportError: - versions += 'not installed' - except AttributeError: - versions += 'unknown version' - - versions += os.linesep - versions += 'PySide2: ' - - try: - import PySide2 - from PySide2 import QtCore - versions += f"PySide: {PySide2.__version__} - Qt: {QtCore.__version__}" - except ImportError: - versions += 'not installed' - except AttributeError: - versions += 'unknown version' - - versions += os.linesep - versions += 'PyQt6: ' - - try: - from PyQt6 import QtCore - versions += \ - f"PyQt: {QtCore.PYQT_VERSION_STR} - Qt: {QtCore.QT_VERSION_STR}" - except ImportError: - versions += 'not installed' - except AttributeError: - versions += 'unknown version' - - versions += os.linesep - versions += 'PySide6: ' - - try: - import PySide6 - from PySide6 import QtCore - versions += f"PySide: {PySide6.__version__} - Qt: {QtCore.__version__}" - except ImportError: - versions += 'not installed' - except AttributeError: - versions += 'unknown version' - - versions += os.linesep - - return versions - - -@pytest.fixture -def pdf_writer(qtbot): - from pathlib import Path - from qtpy import QtGui - output_path = Path('test.pdf') - device = QtGui.QPdfWriter(str(output_path)) - yield device, output_path - output_path.unlink() diff --git a/winpython/_vendor/qtpy/tests/enums_compat.py b/winpython/_vendor/qtpy/tests/enums_compat.py deleted file mode 100644 index 70263fa2..00000000 --- a/winpython/_vendor/qtpy/tests/enums_compat.py +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright © 2009- The Spyder Development Team -# Copyright © 2012- University of North Carolina at Chapel Hill -# Luke Campagnola ('luke.campagnola@%s.com' % 'gmail') -# Ogi Moore ('ognyan.moore@%s.com' % 'gmail') -# KIU Shueng Chuan ('nixchuan@%s.com' % 'gmail') -# Licensed under the terms of the MIT License - -""" -Compatibility functions for scoped and unscoped enum access. -""" - -from . import PYQT6 - -if PYQT6: - import enum - - from . import sip - - def promote_enums(module): - """ - Search enums in the given module and allow unscoped access. - - Taken from: - https://github.com/pyqtgraph/pyqtgraph/blob/pyqtgraph-0.12.1/pyqtgraph/Qt.py#L331-L377 - and adapted to also copy enum values aliased under different names. - - """ - class_names = [name for name in dir(module) if name.startswith('Q')] - for class_name in class_names: - klass = getattr(module, class_name) - if not isinstance(klass, sip.wrappertype): - continue - attrib_names = [name for name in dir(klass) if name[0].isupper()] - for attrib_name in attrib_names: - attrib = getattr(klass, attrib_name) - if not isinstance(attrib, enum.EnumMeta): - continue - for name, value in attrib.__members__.items(): - setattr(klass, name, value) diff --git a/winpython/_vendor/qtpy/tests/py.typed b/winpython/_vendor/qtpy/tests/py.typed deleted file mode 100644 index e69de29b..00000000 diff --git a/winpython/_vendor/qtpy/tests/shiboken.py b/winpython/_vendor/qtpy/tests/shiboken.py deleted file mode 100644 index e9d79320..00000000 --- a/winpython/_vendor/qtpy/tests/shiboken.py +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides access to shiboken.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - raise QtBindingMissingModuleError(name='shiboken') -elif PYQT6: - raise QtBindingMissingModuleError(name='shiboken') -elif PYSIDE2: - from shiboken2 import * - import shiboken2 as shiboken -elif PYSIDE6: - from shiboken6 import * - import shiboken6 as shiboken diff --git a/winpython/_vendor/qtpy/tests/sip.py b/winpython/_vendor/qtpy/tests/sip.py deleted file mode 100644 index 89a31ff3..00000000 --- a/winpython/_vendor/qtpy/tests/sip.py +++ /dev/null @@ -1,25 +0,0 @@ -# ----------------------------------------------------------------------------- -# Copyright © 2009- The Spyder Development Team -# -# Licensed under the terms of the MIT License -# (see LICENSE.txt for details) -# ----------------------------------------------------------------------------- - -"""Provides access to sip.""" - -from . import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - QtBindingMissingModuleError, -) - -if PYQT5: - from PyQt5.sip import * -elif PYQT6: - from PyQt6.sip import * -elif PYSIDE2: - raise QtBindingMissingModuleError(name='sip') -elif PYSIDE6: - raise QtBindingMissingModuleError(name='sip') diff --git a/winpython/_vendor/qtpy/tests/test.ui b/winpython/_vendor/qtpy/tests/test.ui deleted file mode 100644 index 8f0a67c0..00000000 --- a/winpython/_vendor/qtpy/tests/test.ui +++ /dev/null @@ -1,35 +0,0 @@ - - - Form - - - - 0 - 0 - 400 - 300 - - - - Form - - - - - - - - Ceci n'est pas un bouton - - - - - - - - - - - - - diff --git a/winpython/_vendor/qtpy/tests/test_cli.py b/winpython/_vendor/qtpy/tests/test_cli.py deleted file mode 100644 index 6b0f0381..00000000 --- a/winpython/_vendor/qtpy/tests/test_cli.py +++ /dev/null @@ -1,77 +0,0 @@ -"""Test the QtPy CLI.""" - -import subprocess -import sys - -import pytest - -import qtpy - - -SUBCOMMANDS = [ - [], - ['mypy-args'], -] - - -@pytest.mark.parametrize( - argnames=['subcommand'], - argvalues=[[subcommand] for subcommand in SUBCOMMANDS], - ids=[' '.join(subcommand) for subcommand in SUBCOMMANDS], -) -def test_cli_help_does_not_fail(subcommand): - subprocess.run( - [sys.executable, '-m', 'qtpy', *subcommand, '--help'], check=True, - ) - - -def test_cli_version(): - output = subprocess.run( - [sys.executable, '-m', 'qtpy', '--version'], - capture_output=True, - check=True, - encoding='utf-8', - ) - assert output.stdout.strip().split()[-1] == qtpy.__version__ - - -def test_cli_mypy_args(): - output = subprocess.run( - [sys.executable, '-m', 'qtpy', 'mypy-args'], - capture_output=True, - check=True, - encoding='utf-8', - ) - - if qtpy.PYQT5: - expected = ' '.join([ - '--always-true=PYQT5', - '--always-false=PYSIDE2', - '--always-false=PYQT6', - '--always-false=PYSIDE6', - ]) - elif qtpy.PYSIDE2: - expected = ' '.join([ - '--always-false=PYQT5', - '--always-true=PYSIDE2', - '--always-false=PYQT6', - '--always-false=PYSIDE6', - ]) - elif qtpy.PYQT6: - expected = ' '.join([ - '--always-false=PYQT5', - '--always-false=PYSIDE2', - '--always-true=PYQT6', - '--always-false=PYSIDE6', - ]) - elif qtpy.PYSIDE6: - expected = ' '.join([ - '--always-false=PYQT5', - '--always-false=PYSIDE2', - '--always-false=PYQT6', - '--always-true=PYSIDE6', - ]) - else: - assert False, 'No valid API to test' - - assert output.stdout.strip() == expected.strip() diff --git a/winpython/_vendor/qtpy/tests/test_compat.py b/winpython/_vendor/qtpy/tests/test_compat.py deleted file mode 100644 index 856f20bc..00000000 --- a/winpython/_vendor/qtpy/tests/test_compat.py +++ /dev/null @@ -1,21 +0,0 @@ -"""Test the compat module.""" -import pytest -import sys - -from qtpy import compat, QtWidgets -from qtpy.tests.utils import not_using_conda - -@pytest.mark.skipif( - ((sys.version_info.major == 3 and sys.version_info.minor == 7) - and sys.platform.startswith('win') and not not_using_conda()) - or - (sys.platform.startswith('linux') and not_using_conda()), - reason="sip not included in Python3.7 on Windows, or in non-conda test suite on Linux" -) -def test_isalive(qtbot): - """Test compat.isalive""" - test_widget = QtWidgets.QWidget() - assert compat.isalive(test_widget) == True - with qtbot.waitSignal(test_widget.destroyed): - test_widget.deleteLater() - assert compat.isalive(test_widget) == False diff --git a/winpython/_vendor/qtpy/tests/test_custom.ui b/winpython/_vendor/qtpy/tests/test_custom.ui deleted file mode 100644 index f74b5c72..00000000 --- a/winpython/_vendor/qtpy/tests/test_custom.ui +++ /dev/null @@ -1,42 +0,0 @@ - - - Form - - - - 0 - 0 - 400 - 300 - - - - Form - - - - - - - - Ceci n'est pas un bouton - - - - - - - - - - - - - _QComboBoxSubclass - QComboBox -
qcombobox_subclass
-
-
- - -
diff --git a/winpython/_vendor/qtpy/tests/test_macos_checks.py b/winpython/_vendor/qtpy/tests/test_macos_checks.py deleted file mode 100644 index 6993b315..00000000 --- a/winpython/_vendor/qtpy/tests/test_macos_checks.py +++ /dev/null @@ -1,108 +0,0 @@ -from unittest import mock -import platform -import sys - -import pytest -from qtpy import PYQT5, PYSIDE2 - - -@pytest.mark.skipif(not PYQT5, reason="Targeted to PyQt5") -@mock.patch.object(platform, 'mac_ver') -def test_qt59_exception(mac_ver, monkeypatch): - # Remove qtpy to reimport it again - try: - del sys.modules["qtpy"] - except KeyError: - pass - - # Patch stdlib to emulate a macOS system - monkeypatch.setattr("sys.platform", 'darwin') - mac_ver.return_value = ('10.9.2',) - - # Patch Qt version - monkeypatch.setattr("PyQt5.QtCore.QT_VERSION_STR", '5.9.1') - - # This should raise an Exception - with pytest.raises(Exception) as e: - import qtpy - - assert '10.10' in str(e.value) - assert '5.9' in str(e.value) - - -@pytest.mark.skipif(not PYQT5, reason="Targeted to PyQt5") -@mock.patch.object(platform, 'mac_ver') -def test_qt59_no_exception(mac_ver, monkeypatch): - # Remove qtpy to reimport it again - try: - del sys.modules["qtpy"] - except KeyError: - pass - - # Patch stdlib to emulate a macOS system - monkeypatch.setattr("sys.platform", 'darwin') - mac_ver.return_value = ('10.10.1',) - - # Patch Qt version - monkeypatch.setattr("PyQt5.QtCore.QT_VERSION_STR", '5.9.5') - - # This should not raise an Exception - try: - import qtpy - except Exception: - pytest.fail("Error!") - - -@pytest.mark.skipif(not (PYQT5 or PYSIDE2), - reason="Targeted to PyQt5 or PySide2") -@mock.patch.object(platform, 'mac_ver') -def test_qt511_exception(mac_ver, monkeypatch): - # Remove qtpy to reimport it again - try: - del sys.modules["qtpy"] - except KeyError: - pass - - # Patch stdlib to emulate a macOS system - monkeypatch.setattr("sys.platform", 'darwin') - mac_ver.return_value = ('10.10.3',) - - # Patch Qt version - if PYQT5: - monkeypatch.setattr("PyQt5.QtCore.QT_VERSION_STR", '5.11.1') - else: - monkeypatch.setattr("PySide2.QtCore.__version__", '5.11.1') - - # This should raise an Exception - with pytest.raises(Exception) as e: - import qtpy - - assert '10.11' in str(e.value) - assert '5.11' in str(e.value) - - -@pytest.mark.skipif(not (PYQT5 or PYSIDE2), - reason="Targeted to PyQt5 or PySide2") -@mock.patch.object(platform, 'mac_ver') -def test_qt511_no_exception(mac_ver, monkeypatch): - # Remove qtpy to reimport it again - try: - del sys.modules["qtpy"] - except KeyError: - pass - - # Patch stdlib to emulate a macOS system - monkeypatch.setattr("sys.platform", 'darwin') - mac_ver.return_value = ('10.13.2',) - - # Patch Qt version - if PYQT5: - monkeypatch.setattr("PyQt5.QtCore.QT_VERSION_STR", '5.11.1') - else: - monkeypatch.setattr("PySide2.QtCore.__version__", '5.11.1') - - # This should not raise an Exception - try: - import qtpy - except Exception: - pytest.fail("Error!") diff --git a/winpython/_vendor/qtpy/tests/test_main.py b/winpython/_vendor/qtpy/tests/test_main.py deleted file mode 100644 index f6c6efbf..00000000 --- a/winpython/_vendor/qtpy/tests/test_main.py +++ /dev/null @@ -1,131 +0,0 @@ -import os -import sys -import subprocess - -import pytest - -from qtpy import QtCore, QtGui, QtWidgets, API_NAMES, PythonQtValueError - -try: - # removed in qt 6.0 - from qtpy import QtWebEngineWidgets -except Exception: - pass - -def assert_pyside2(): - """ - Make sure that we are using PySide - """ - import PySide2 - assert QtCore.QEvent is PySide2.QtCore.QEvent - assert QtGui.QPainter is PySide2.QtGui.QPainter - assert QtWidgets.QWidget is PySide2.QtWidgets.QWidget - assert QtWebEngineWidgets.QWebEnginePage is PySide2.QtWebEngineWidgets.QWebEnginePage - assert os.environ['QT_API'] == 'pyside2' - -def assert_pyside6(): - """ - Make sure that we are using PySide - """ - import PySide6 - assert QtCore.QEvent is PySide6.QtCore.QEvent - assert QtGui.QPainter is PySide6.QtGui.QPainter - assert QtWidgets.QWidget is PySide6.QtWidgets.QWidget - # Only valid for qt>=6.2 - # assert QtWebEngineWidgets.QWebEnginePage is PySide6.QtWebEngineCore.QWebEnginePage - assert os.environ['QT_API'] == 'pyside6' - -def assert_pyqt5(): - """ - Make sure that we are using PyQt5 - """ - import PyQt5 - assert QtCore.QEvent is PyQt5.QtCore.QEvent - assert QtGui.QPainter is PyQt5.QtGui.QPainter - assert QtWidgets.QWidget is PyQt5.QtWidgets.QWidget - assert os.environ['QT_API'] == 'pyqt5' - -def assert_pyqt6(): - """ - Make sure that we are using PyQt6 - """ - import PyQt6 - assert QtCore.QEvent is PyQt6.QtCore.QEvent - assert QtGui.QPainter is PyQt6.QtGui.QPainter - assert QtWidgets.QWidget is PyQt6.QtWidgets.QWidget - assert os.environ['QT_API'] == 'pyqt6' - - -def test_qt_api(): - """ - If QT_API is specified, we check that the correct Qt wrapper was used - """ - - QT_API = os.environ.get('QT_API', '').lower() - - if QT_API == 'pyqt5': - assert_pyqt5() - elif QT_API == 'pyside2': - assert_pyside2() - elif QT_API == 'pyqt6': - assert_pyqt6() - elif QT_API == 'pyside6': - assert_pyside6() - else: - # If the tests are run locally, USE_QT_API and QT_API may not be - # defined, but we still want to make sure qtpy is behaving sensibly. - # We should then be loading, in order of decreasing preference, PyQt5, - # PySide2, PyQt6 and PySide6. - try: - import PyQt5 - except ImportError: - try: - import PySide2 - except ImportError: - try: - import PyQt6 - except ImportError: - import PySide6 - assert_pyside6() - else: - assert_pyqt6() - else: - assert_pyside2() - else: - assert_pyqt5() - - -@pytest.mark.parametrize('api', API_NAMES.values()) -def test_qt_api_environ(api): - """ - If no QT_API is specified but some Qt is imported, ensure QT_API is set properly. - """ - mod = f'{api}.QtCore' - pytest.importorskip(mod, reason=f'Requires {api}') - # clean env - env = os.environ.copy() - for key in ('QT_API', 'USE_QT_API'): - if key in env: - del env[key] - cmd = f""" -import {mod} -from qtpy import API -import os -print(API) -print(os.environ['QT_API']) -""" - output = subprocess.check_output([sys.executable, '-c', cmd], env=env) - got_api, env_qt_api = output.strip().decode('utf-8').splitlines() - assert got_api == api.lower() - assert env_qt_api == api.lower() - # Also ensure we raise a nice error - env['QT_API'] = 'bad' - cmd = """ -try: - import qtpy -except ValueError as exc: - assert 'Specified QT_API' in str(exc), str(exc) -else: - raise AssertionError('QtPy imported despite bad QT_API') -""" - subprocess.check_call([sys.executable, '-Oc', cmd], env=env) diff --git a/winpython/_vendor/qtpy/tests/test_qdesktopservice_split.py b/winpython/_vendor/qtpy/tests/test_qdesktopservice_split.py deleted file mode 100644 index 27021762..00000000 --- a/winpython/_vendor/qtpy/tests/test_qdesktopservice_split.py +++ /dev/null @@ -1,23 +0,0 @@ -"""Test QDesktopServices split in Qt5.""" - - -import pytest -import warnings - - -def test_qstandarpath(): - """Test the qtpy.QStandardPaths namespace""" - from qtpy.QtCore import QStandardPaths - - assert QStandardPaths.StandardLocation is not None - - # Attributes from QDesktopServices shouldn't be in QStandardPaths - with pytest.raises(AttributeError) as excinfo: - QStandardPaths.setUrlHandler - - -def test_qdesktopservice(): - """Test the qtpy.QDesktopServices namespace""" - from qtpy.QtGui import QDesktopServices - - assert QDesktopServices.setUrlHandler is not None diff --git a/winpython/_vendor/qtpy/tests/test_qsci.py b/winpython/_vendor/qtpy/tests/test_qsci.py deleted file mode 100644 index 8f001588..00000000 --- a/winpython/_vendor/qtpy/tests/test_qsci.py +++ /dev/null @@ -1,68 +0,0 @@ -"""Test Qsci.""" - -import pytest - -from qtpy import PYSIDE2, PYSIDE6 -from qtpy.tests.utils import using_conda - - -@pytest.mark.skipif( - PYSIDE2 or PYSIDE6 or using_conda(), - reason="Qsci bindings not available under PySide 2/6 and conda installations", -) -def test_qsci(): - """Test the qtpy.Qsci namespace""" - Qsci = pytest.importorskip("qtpy.Qsci") - assert Qsci.QSCINTILLA_VERSION is not None - assert Qsci.QSCINTILLA_VERSION_STR is not None - assert Qsci.QsciAPIs is not None - assert Qsci.QsciAbstractAPIs is not None - assert Qsci.QsciCommand is not None - assert Qsci.QsciCommandSet is not None - assert Qsci.QsciDocument is not None - assert Qsci.QsciLexer is not None - assert Qsci.QsciLexerAVS is not None - assert Qsci.QsciLexerBash is not None - assert Qsci.QsciLexerBatch is not None - assert Qsci.QsciLexerCMake is not None - assert Qsci.QsciLexerCPP is not None - assert Qsci.QsciLexerCSS is not None - assert Qsci.QsciLexerCSharp is not None - assert Qsci.QsciLexerCoffeeScript is not None - assert Qsci.QsciLexerCustom is not None - assert Qsci.QsciLexerD is not None - assert Qsci.QsciLexerDiff is not None - assert Qsci.QsciLexerFortran is not None - assert Qsci.QsciLexerFortran77 is not None - assert Qsci.QsciLexerHTML is not None - assert Qsci.QsciLexerIDL is not None - assert Qsci.QsciLexerJSON is not None - assert Qsci.QsciLexerJava is not None - assert Qsci.QsciLexerJavaScript is not None - assert Qsci.QsciLexerLua is not None - assert Qsci.QsciLexerMakefile is not None - assert Qsci.QsciLexerMarkdown is not None - assert Qsci.QsciLexerMatlab is not None - assert Qsci.QsciLexerOctave is not None - assert Qsci.QsciLexerPO is not None - assert Qsci.QsciLexerPOV is not None - assert Qsci.QsciLexerPascal is not None - assert Qsci.QsciLexerPerl is not None - assert Qsci.QsciLexerPostScript is not None - assert Qsci.QsciLexerProperties is not None - assert Qsci.QsciLexerPython is not None - assert Qsci.QsciLexerRuby is not None - assert Qsci.QsciLexerSQL is not None - assert Qsci.QsciLexerSpice is not None - assert Qsci.QsciLexerTCL is not None - assert Qsci.QsciLexerTeX is not None - assert Qsci.QsciLexerVHDL is not None - assert Qsci.QsciLexerVerilog is not None - assert Qsci.QsciLexerXML is not None - assert Qsci.QsciLexerYAML is not None - assert Qsci.QsciMacro is not None - assert Qsci.QsciPrinter is not None - assert Qsci.QsciScintilla is not None - assert Qsci.QsciScintillaBase is not None - assert Qsci.QsciStyle is not None - assert Qsci.QsciStyledText is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3danimation.py b/winpython/_vendor/qtpy/tests/test_qt3danimation.py deleted file mode 100644 index 6eac3c33..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3danimation.py +++ /dev/null @@ -1,23 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qt3danimation(): - """Test the qtpy.Qt3DAnimation namespace""" - Qt3DAnimation = pytest.importorskip("qtpy.Qt3DAnimation") - - assert Qt3DAnimation.QAnimationController is not None - assert Qt3DAnimation.QAdditiveClipBlend is not None - assert Qt3DAnimation.QAbstractClipBlendNode is not None - assert Qt3DAnimation.QAbstractAnimation is not None - assert Qt3DAnimation.QKeyframeAnimation is not None - assert Qt3DAnimation.QAbstractAnimationClip is not None - assert Qt3DAnimation.QAbstractClipAnimator is not None - assert Qt3DAnimation.QClipAnimator is not None - assert Qt3DAnimation.QAnimationGroup is not None - assert Qt3DAnimation.QLerpClipBlend is not None - assert Qt3DAnimation.QMorphingAnimation is not None - assert Qt3DAnimation.QAnimationAspect is not None - assert Qt3DAnimation.QVertexBlendAnimation is not None - assert Qt3DAnimation.QBlendedClipAnimator is not None - assert Qt3DAnimation.QMorphTarget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3dcore.py b/winpython/_vendor/qtpy/tests/test_qt3dcore.py deleted file mode 100644 index cd17542e..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3dcore.py +++ /dev/null @@ -1,44 +0,0 @@ -import pytest -from qtpy import PYQT6, PYSIDE6 - - -@pytest.mark.skipif(PYQT6, reason="Not complete in PyQt6") -@pytest.mark.skipif(PYSIDE6, reason="Not complete in PySide6") -def test_qt3dcore(): - """Test the qtpy.Qt3DCore namespace""" - Qt3DCore = pytest.importorskip("qtpy.Qt3DCore") - - assert Qt3DCore.QPropertyValueAddedChange is not None - assert Qt3DCore.QSkeletonLoader is not None - assert Qt3DCore.QPropertyNodeRemovedChange is not None - assert Qt3DCore.QPropertyUpdatedChange is not None - assert Qt3DCore.QAspectEngine is not None - assert Qt3DCore.QPropertyValueAddedChangeBase is not None - assert Qt3DCore.QStaticPropertyValueRemovedChangeBase is not None - assert Qt3DCore.QPropertyNodeAddedChange is not None - assert Qt3DCore.QDynamicPropertyUpdatedChange is not None - assert Qt3DCore.QStaticPropertyUpdatedChangeBase is not None - assert Qt3DCore.ChangeFlags is not None - assert Qt3DCore.QAbstractAspect is not None - assert Qt3DCore.QBackendNode is not None - assert Qt3DCore.QTransform is not None - assert Qt3DCore.QPropertyUpdatedChangeBase is not None - assert Qt3DCore.QNodeId is not None - assert Qt3DCore.QJoint is not None - assert Qt3DCore.QSceneChange is not None - assert Qt3DCore.QNodeIdTypePair is not None - assert Qt3DCore.QAbstractSkeleton is not None - assert Qt3DCore.QComponentRemovedChange is not None - assert Qt3DCore.QComponent is not None - assert Qt3DCore.QEntity is not None - assert Qt3DCore.QNodeCommand is not None - assert Qt3DCore.QNode is not None - assert Qt3DCore.QPropertyValueRemovedChange is not None - assert Qt3DCore.QPropertyValueRemovedChangeBase is not None - assert Qt3DCore.QComponentAddedChange is not None - assert Qt3DCore.QNodeCreatedChangeBase is not None - assert Qt3DCore.QNodeDestroyedChange is not None - assert Qt3DCore.QArmature is not None - assert Qt3DCore.QStaticPropertyValueAddedChangeBase is not None - assert Qt3DCore.ChangeFlag is not None - assert Qt3DCore.QSkeleton is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3dextras.py b/winpython/_vendor/qtpy/tests/test_qt3dextras.py deleted file mode 100644 index ba3f0e14..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3dextras.py +++ /dev/null @@ -1,44 +0,0 @@ -import pytest - - -def test_qt3dextras(): - """Test the qtpy.Qt3DExtras namespace""" - Qt3DExtras = pytest.importorskip("qtpy.Qt3DExtras") - - assert Qt3DExtras.QTextureMaterial is not None - assert Qt3DExtras.QPhongAlphaMaterial is not None - assert Qt3DExtras.QOrbitCameraController is not None - assert Qt3DExtras.QAbstractSpriteSheet is not None - assert Qt3DExtras.QNormalDiffuseMapMaterial is not None - assert Qt3DExtras.QDiffuseSpecularMaterial is not None - assert Qt3DExtras.QSphereGeometry is not None - assert Qt3DExtras.QCuboidGeometry is not None - assert Qt3DExtras.QForwardRenderer is not None - assert Qt3DExtras.QPhongMaterial is not None - assert Qt3DExtras.QSpriteGrid is not None - assert Qt3DExtras.QDiffuseMapMaterial is not None - assert Qt3DExtras.QConeGeometry is not None - assert Qt3DExtras.QSpriteSheetItem is not None - assert Qt3DExtras.QPlaneGeometry is not None - assert Qt3DExtras.QSphereMesh is not None - assert Qt3DExtras.QNormalDiffuseSpecularMapMaterial is not None - assert Qt3DExtras.QCuboidMesh is not None - assert Qt3DExtras.QGoochMaterial is not None - assert Qt3DExtras.QText2DEntity is not None - assert Qt3DExtras.QTorusMesh is not None - assert Qt3DExtras.Qt3DWindow is not None - assert Qt3DExtras.QPerVertexColorMaterial is not None - assert Qt3DExtras.QExtrudedTextGeometry is not None - assert Qt3DExtras.QSkyboxEntity is not None - assert Qt3DExtras.QAbstractCameraController is not None - assert Qt3DExtras.QExtrudedTextMesh is not None - assert Qt3DExtras.QCylinderGeometry is not None - assert Qt3DExtras.QTorusGeometry is not None - assert Qt3DExtras.QMorphPhongMaterial is not None - assert Qt3DExtras.QPlaneMesh is not None - assert Qt3DExtras.QDiffuseSpecularMapMaterial is not None - assert Qt3DExtras.QSpriteSheet is not None - assert Qt3DExtras.QConeMesh is not None - assert Qt3DExtras.QFirstPersonCameraController is not None - assert Qt3DExtras.QMetalRoughMaterial is not None - assert Qt3DExtras.QCylinderMesh is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3dinput.py b/winpython/_vendor/qtpy/tests/test_qt3dinput.py deleted file mode 100644 index 562055ed..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3dinput.py +++ /dev/null @@ -1,29 +0,0 @@ -import pytest - - -def test_qt3dinput(): - """Test the qtpy.Qt3DInput namespace""" - Qt3DInput = pytest.importorskip("qtpy.Qt3DInput") - - assert Qt3DInput.QAxisAccumulator is not None - assert Qt3DInput.QInputSettings is not None - assert Qt3DInput.QAnalogAxisInput is not None - assert Qt3DInput.QAbstractAxisInput is not None - assert Qt3DInput.QMouseHandler is not None - assert Qt3DInput.QButtonAxisInput is not None - assert Qt3DInput.QInputSequence is not None - assert Qt3DInput.QWheelEvent is not None - assert Qt3DInput.QActionInput is not None - assert Qt3DInput.QKeyboardDevice is not None - assert Qt3DInput.QMouseDevice is not None - assert Qt3DInput.QAxis is not None - assert Qt3DInput.QInputChord is not None - assert Qt3DInput.QMouseEvent is not None - assert Qt3DInput.QKeyboardHandler is not None - assert Qt3DInput.QKeyEvent is not None - assert Qt3DInput.QAbstractActionInput is not None - assert Qt3DInput.QInputAspect is not None - assert Qt3DInput.QLogicalDevice is not None - assert Qt3DInput.QAction is not None - assert Qt3DInput.QAbstractPhysicalDevice is not None - assert Qt3DInput.QAxisSetting is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3dlogic.py b/winpython/_vendor/qtpy/tests/test_qt3dlogic.py deleted file mode 100644 index c325bf76..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3dlogic.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest - - -def test_qt3dlogic(): - """Test the qtpy.Qt3DLogic namespace""" - Qt3DLogic = pytest.importorskip("qtpy.Qt3DLogic") - - assert Qt3DLogic.QLogicAspect is not None - assert Qt3DLogic.QFrameAction is not None diff --git a/winpython/_vendor/qtpy/tests/test_qt3drender.py b/winpython/_vendor/qtpy/tests/test_qt3drender.py deleted file mode 100644 index c620721b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qt3drender.py +++ /dev/null @@ -1,119 +0,0 @@ -import pytest -from qtpy import PYQT6, PYSIDE6 - - -@pytest.mark.skipif(PYQT6, reason="Not complete in PyQt6") -@pytest.mark.skipif(PYSIDE6, reason="Not complete in PySide6") -def test_qt3drender(): - """Test the qtpy.Qt3DRender namespace""" - Qt3DRender = pytest.importorskip("qtpy.Qt3DRender") - - assert Qt3DRender.QPointSize is not None - assert Qt3DRender.QFrustumCulling is not None - assert Qt3DRender.QPickPointEvent is not None - assert Qt3DRender.QRenderPassFilter is not None - assert Qt3DRender.QMesh is not None - assert Qt3DRender.QRayCaster is not None - assert Qt3DRender.QStencilMask is not None - assert Qt3DRender.QPickLineEvent is not None - assert Qt3DRender.QPickTriangleEvent is not None - assert Qt3DRender.QRenderState is not None - assert Qt3DRender.QTextureWrapMode is not None - assert Qt3DRender.QRenderPass is not None - assert Qt3DRender.QGeometryRenderer is not None - assert Qt3DRender.QAttribute is not None - assert Qt3DRender.QStencilOperation is not None - assert Qt3DRender.QScissorTest is not None - assert Qt3DRender.QTextureCubeMapArray is not None - assert Qt3DRender.QRenderTarget is not None - assert Qt3DRender.QStencilTest is not None - assert Qt3DRender.QTextureData is not None - assert Qt3DRender.QBuffer is not None - assert Qt3DRender.QLineWidth is not None - assert Qt3DRender.QLayer is not None - assert Qt3DRender.QTextureRectangle is not None - assert Qt3DRender.QRenderTargetSelector is not None - assert Qt3DRender.QPickingSettings is not None - assert Qt3DRender.QCullFace is not None - assert Qt3DRender.QAbstractFunctor is not None - assert Qt3DRender.PropertyReaderInterface is not None - assert Qt3DRender.QMaterial is not None - assert Qt3DRender.QAlphaCoverage is not None - assert Qt3DRender.QClearBuffers is not None - assert Qt3DRender.QAlphaTest is not None - assert Qt3DRender.QStencilOperationArguments is not None - assert Qt3DRender.QTexture2DMultisample is not None - assert Qt3DRender.QLevelOfDetailSwitch is not None - assert Qt3DRender.QRenderStateSet is not None - assert Qt3DRender.QViewport is not None - assert Qt3DRender.QObjectPicker is not None - assert Qt3DRender.QPolygonOffset is not None - assert Qt3DRender.QRenderSettings is not None - assert Qt3DRender.QFrontFace is not None - assert Qt3DRender.QTexture3D is not None - assert Qt3DRender.QTextureBuffer is not None - assert Qt3DRender.QTechniqueFilter is not None - assert Qt3DRender.QLayerFilter is not None - assert Qt3DRender.QFilterKey is not None - assert Qt3DRender.QRenderSurfaceSelector is not None - assert Qt3DRender.QEnvironmentLight is not None - assert Qt3DRender.QMemoryBarrier is not None - assert Qt3DRender.QNoDepthMask is not None - assert Qt3DRender.QBlitFramebuffer is not None - assert Qt3DRender.QGraphicsApiFilter is not None - assert Qt3DRender.QAbstractTexture is not None - assert Qt3DRender.QRenderCaptureReply is not None - assert Qt3DRender.QAbstractLight is not None - assert Qt3DRender.QAbstractRayCaster is not None - assert Qt3DRender.QDirectionalLight is not None - assert Qt3DRender.QDispatchCompute is not None - assert Qt3DRender.QBufferDataGenerator is not None - assert Qt3DRender.QPointLight is not None - assert Qt3DRender.QStencilTestArguments is not None - assert Qt3DRender.QTexture1D is not None - assert Qt3DRender.QCameraSelector is not None - assert Qt3DRender.QProximityFilter is not None - assert Qt3DRender.QTexture1DArray is not None - assert Qt3DRender.QBlendEquation is not None - assert Qt3DRender.QTextureImageDataGenerator is not None - assert Qt3DRender.QSpotLight is not None - assert Qt3DRender.QEffect is not None - assert Qt3DRender.QSeamlessCubemap is not None - assert Qt3DRender.QTexture2DMultisampleArray is not None - assert Qt3DRender.QComputeCommand is not None - assert Qt3DRender.QFrameGraphNode is not None - assert Qt3DRender.QSortPolicy is not None - assert Qt3DRender.QTextureImageData is not None - assert Qt3DRender.QCamera is not None - assert Qt3DRender.QGeometry is not None - assert Qt3DRender.QScreenRayCaster is not None - assert Qt3DRender.QClipPlane is not None - assert Qt3DRender.QMultiSampleAntiAliasing is not None - assert Qt3DRender.QRayCasterHit is not None - assert Qt3DRender.QAbstractTextureImage is not None - assert Qt3DRender.QNoDraw is not None - assert Qt3DRender.QPickEvent is not None - assert Qt3DRender.QRenderCapture is not None - assert Qt3DRender.QDepthTest is not None - assert Qt3DRender.QParameter is not None - assert Qt3DRender.QLevelOfDetail is not None - assert Qt3DRender.QGeometryFactory is not None - assert Qt3DRender.QTexture2D is not None - assert Qt3DRender.QRenderAspect is not None - assert Qt3DRender.QPaintedTextureImage is not None - assert Qt3DRender.QDithering is not None - assert Qt3DRender.QTextureGenerator is not None - assert Qt3DRender.QBlendEquationArguments is not None - assert Qt3DRender.QLevelOfDetailBoundingSphere is not None - assert Qt3DRender.QColorMask is not None - assert Qt3DRender.QSceneLoader is not None - assert Qt3DRender.QTextureLoader is not None - assert Qt3DRender.QShaderProgram is not None - assert Qt3DRender.QTextureCubeMap is not None - assert Qt3DRender.QTexture2DArray is not None - assert Qt3DRender.QTextureImage is not None - assert Qt3DRender.QCameraLens is not None - assert Qt3DRender.QRenderTargetOutput is not None - assert Qt3DRender.QShaderProgramBuilder is not None - assert Qt3DRender.QTechnique is not None - assert Qt3DRender.QShaderData is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtaxcontainer.py b/winpython/_vendor/qtpy/tests/test_qtaxcontainer.py deleted file mode 100644 index 6e31a153..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtaxcontainer.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest - - -def test_qtaxcontainer(): - """Test the qtpy.QtAxContainer namespace""" - QtAxContainer = pytest.importorskip("qtpy.QtAxContainer") - - assert QtAxContainer.QAxSelect is not None - assert QtAxContainer.QAxWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtbluetooth.py b/winpython/_vendor/qtpy/tests/test_qtbluetooth.py deleted file mode 100644 index c1f1e547..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtbluetooth.py +++ /dev/null @@ -1,15 +0,0 @@ -import pytest -from qtpy import PYSIDE2 - - -def test_qtbluetooth(): - """Test the qtpy.QtBluetooth namespace""" - QtBluetooth = pytest.importorskip("qtpy.QtBluetooth") - - assert QtBluetooth.QBluetooth is not None - assert QtBluetooth.QBluetoothDeviceInfo is not None - assert QtBluetooth.QBluetoothServer is not None - assert QtBluetooth.QBluetoothSocket is not None - assert QtBluetooth.QBluetoothAddress is not None - assert QtBluetooth.QBluetoothUuid is not None - assert QtBluetooth.QBluetoothServiceDiscoveryAgent is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtcharts.py b/winpython/_vendor/qtpy/tests/test_qtcharts.py deleted file mode 100644 index 4873e01f..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtcharts.py +++ /dev/null @@ -1,14 +0,0 @@ -import pytest - -from qtpy import PYSIDE2, PYSIDE6 - - -@pytest.mark.skipif( - not (PYSIDE2 or PYSIDE6), reason="Only available by default in PySide" -) -def test_qtcharts(): - """Test the qtpy.QtCharts namespace""" - QtCharts = pytest.importorskip("qtpy.QtCharts") - - assert QtCharts.QChart is not None - assert QtCharts.QtCharts.QChart is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtconcurrent.py b/winpython/_vendor/qtpy/tests/test_qtconcurrent.py deleted file mode 100644 index 7bd0c4ca..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtconcurrent.py +++ /dev/null @@ -1,16 +0,0 @@ -import pytest -from packaging.version import parse -from qtpy import PYSIDE2, PYSIDE_VERSION - - -def test_qtconcurrent(): - """Test the qtpy.QtConcurrent namespace""" - QtConcurrent = pytest.importorskip("qtpy.QtConcurrent") - - assert QtConcurrent.QtConcurrent is not None - - if PYSIDE2 and parse(PYSIDE_VERSION) >= parse("5.15.2"): - assert QtConcurrent.QFutureQString is not None - assert QtConcurrent.QFutureVoid is not None - assert QtConcurrent.QFutureWatcherQString is not None - assert QtConcurrent.QFutureWatcherVoid is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtcore.py b/winpython/_vendor/qtpy/tests/test_qtcore.py deleted file mode 100644 index 6327ec92..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtcore.py +++ /dev/null @@ -1,113 +0,0 @@ -"""Test QtCore.""" - -from datetime import date, datetime, time -import sys - -import pytest - -from qtpy import ( - PYQT5, - PYQT6, - PYSIDE2, - PYSIDE6, - PYQT_VERSION, - PYSIDE_VERSION, - QtCore, -) -from qtpy.tests.utils import not_using_conda - - -def test_qtmsghandler(): - """Test qtpy.QtMsgHandler""" - assert QtCore.qInstallMessageHandler is not None - - -def test_qdatetime_toPython(): - """Test QDateTime.toPython""" - q_date = QtCore.QDateTime.currentDateTime() - assert QtCore.QDateTime.toPython is not None - py_date = q_date.toPython() - assert isinstance(py_date, datetime) - - -def test_qdate_toPython(): - """Test QDate.toPython""" - q_date = QtCore.QDate.currentDate() - assert QtCore.QDate.toPython is not None - py_date = q_date.toPython() - assert isinstance(py_date, date) - - -def test_qtime_toPython(): - """Test QTime.toPython""" - q_time = QtCore.QTime.currentTime() - assert QtCore.QTime.toPython is not None - py_time = q_time.toPython() - assert isinstance(py_time, time) - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -def test_qeventloop_exec_(qtbot): - """Test QEventLoop.exec_""" - assert QtCore.QEventLoop.exec_ is not None - event_loop = QtCore.QEventLoop(None) - QtCore.QTimer.singleShot(100, event_loop.quit) - event_loop.exec_() - - -def test_qthread_exec_(): - """Test QThread.exec_""" - assert QtCore.QThread.exec_ is not None - - -def test_qlibraryinfo_location(): - """Test QLibraryInfo.location""" - assert QtCore.QLibraryInfo.location is not None - assert QtCore.QLibraryInfo.location(QtCore.QLibraryInfo.PrefixPath) is not None - - -def test_qtextstreammanipulator_exec_(): - """Test QTextStreamManipulator.exec_""" - QtCore.QTextStreamManipulator.exec_ is not None - - -@pytest.mark.skipif(PYSIDE2 or PYQT6, - reason="Doesn't seem to be present on PySide2 and PyQt6") -def test_QtCore_SignalInstance(): - class ClassWithSignal(QtCore.QObject): - signal = QtCore.Signal() - - instance = ClassWithSignal() - - assert isinstance(instance.signal, QtCore.SignalInstance) - - -@pytest.mark.skipif(PYQT5 and PYQT_VERSION.startswith('5.9'), - reason="A specific setup with at least sip 4.9.9 is needed for PyQt5 5.9.*" - "to work with scoped enum access") -def test_enum_access(): - """Test scoped and unscoped enum access for qtpy.QtCore.*.""" - assert QtCore.QAbstractAnimation.Stopped == QtCore.QAbstractAnimation.State.Stopped - assert QtCore.QEvent.ActionAdded == QtCore.QEvent.Type.ActionAdded - assert QtCore.Qt.AlignLeft == QtCore.Qt.AlignmentFlag.AlignLeft - assert QtCore.Qt.Key_Return == QtCore.Qt.Key.Key_Return - assert QtCore.Qt.transparent == QtCore.Qt.GlobalColor.transparent - assert QtCore.Qt.Widget == QtCore.Qt.WindowType.Widget - assert QtCore.Qt.BackButton == QtCore.Qt.MouseButton.BackButton - assert QtCore.Qt.XButton1 == QtCore.Qt.MouseButton.XButton1 - assert QtCore.Qt.BackgroundColorRole == QtCore.Qt.ItemDataRole.BackgroundColorRole - assert QtCore.Qt.TextColorRole == QtCore.Qt.ItemDataRole.TextColorRole - assert QtCore.Qt.MidButton == QtCore.Qt.MouseButton.MiddleButton - - -@pytest.mark.skipif(PYSIDE2 and PYSIDE_VERSION.startswith('5.12.0'), - reason="Utility functions unavailable for PySide2 5.12.0") -def test_qtgui_namespace_mightBeRichText(): - """ - Test included elements (mightBeRichText) from module QtGui. - - See: https://doc.qt.io/qt-5/qt-sub-qtgui.html - """ - assert QtCore.Qt.mightBeRichText is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtdatavisualization.py b/winpython/_vendor/qtpy/tests/test_qtdatavisualization.py deleted file mode 100644 index 09f19f31..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtdatavisualization.py +++ /dev/null @@ -1,85 +0,0 @@ -import pytest - - -def test_qtdatavisualization(): - """Test the qtpy.QtDataVisualization namespace""" - # Using import skip here since with Python 3 you need to install another package - # besides the base `PyQt5` or `PySide2`. - # For example in the case of `PyQt5` you need `PyQtDataVisualization` - - # QtDataVisualization - QtDataVisualization = pytest.importorskip("qtpy.QtDataVisualization") - assert QtDataVisualization.QScatter3DSeries is not None - assert QtDataVisualization.QSurfaceDataItem is not None - assert QtDataVisualization.QSurface3DSeries is not None - assert QtDataVisualization.QAbstract3DInputHandler is not None - assert QtDataVisualization.QHeightMapSurfaceDataProxy is not None - assert QtDataVisualization.QAbstractDataProxy is not None - assert QtDataVisualization.Q3DCamera is not None - assert QtDataVisualization.QAbstract3DGraph is not None - assert QtDataVisualization.QCustom3DVolume is not None - assert QtDataVisualization.Q3DInputHandler is not None - assert QtDataVisualization.QBarDataProxy is not None - assert QtDataVisualization.QSurfaceDataProxy is not None - assert QtDataVisualization.QScatterDataItem is not None - assert QtDataVisualization.Q3DLight is not None - assert QtDataVisualization.QScatterDataProxy is not None - assert QtDataVisualization.QValue3DAxis is not None - assert QtDataVisualization.Q3DBars is not None - assert QtDataVisualization.QBarDataItem is not None - assert QtDataVisualization.QItemModelBarDataProxy is not None - assert QtDataVisualization.Q3DTheme is not None - assert QtDataVisualization.QCustom3DItem is not None - assert QtDataVisualization.QItemModelScatterDataProxy is not None - assert QtDataVisualization.QValue3DAxisFormatter is not None - assert QtDataVisualization.QItemModelSurfaceDataProxy is not None - assert QtDataVisualization.Q3DScatter is not None - assert QtDataVisualization.QTouch3DInputHandler is not None - assert QtDataVisualization.QBar3DSeries is not None - assert QtDataVisualization.QAbstract3DAxis is not None - assert QtDataVisualization.Q3DScene is not None - assert QtDataVisualization.QCategory3DAxis is not None - assert QtDataVisualization.QAbstract3DSeries is not None - assert QtDataVisualization.Q3DObject is not None - assert QtDataVisualization.QCustom3DLabel is not None - assert QtDataVisualization.Q3DSurface is not None - assert QtDataVisualization.QLogValue3DAxisFormatter is not None - - # QtDatavisualization - QtDatavisualization = pytest.importorskip("qtpy.QtDatavisualization") - - assert QtDatavisualization.QScatter3DSeries is not None - assert QtDatavisualization.QSurfaceDataItem is not None - assert QtDatavisualization.QSurface3DSeries is not None - assert QtDatavisualization.QAbstract3DInputHandler is not None - assert QtDatavisualization.QHeightMapSurfaceDataProxy is not None - assert QtDatavisualization.QAbstractDataProxy is not None - assert QtDatavisualization.Q3DCamera is not None - assert QtDatavisualization.QAbstract3DGraph is not None - assert QtDatavisualization.QCustom3DVolume is not None - assert QtDatavisualization.Q3DInputHandler is not None - assert QtDatavisualization.QBarDataProxy is not None - assert QtDatavisualization.QSurfaceDataProxy is not None - assert QtDatavisualization.QScatterDataItem is not None - assert QtDatavisualization.Q3DLight is not None - assert QtDatavisualization.QScatterDataProxy is not None - assert QtDatavisualization.QValue3DAxis is not None - assert QtDatavisualization.Q3DBars is not None - assert QtDatavisualization.QBarDataItem is not None - assert QtDatavisualization.QItemModelBarDataProxy is not None - assert QtDatavisualization.Q3DTheme is not None - assert QtDatavisualization.QCustom3DItem is not None - assert QtDatavisualization.QItemModelScatterDataProxy is not None - assert QtDatavisualization.QValue3DAxisFormatter is not None - assert QtDatavisualization.QItemModelSurfaceDataProxy is not None - assert QtDatavisualization.Q3DScatter is not None - assert QtDatavisualization.QTouch3DInputHandler is not None - assert QtDatavisualization.QBar3DSeries is not None - assert QtDatavisualization.QAbstract3DAxis is not None - assert QtDatavisualization.Q3DScene is not None - assert QtDatavisualization.QCategory3DAxis is not None - assert QtDatavisualization.QAbstract3DSeries is not None - assert QtDatavisualization.Q3DObject is not None - assert QtDatavisualization.QCustom3DLabel is not None - assert QtDatavisualization.Q3DSurface is not None - assert QtDatavisualization.QLogValue3DAxisFormatter is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtdbus.py b/winpython/_vendor/qtpy/tests/test_qtdbus.py deleted file mode 100644 index 6b9a9ae2..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtdbus.py +++ /dev/null @@ -1,13 +0,0 @@ -import pytest -import sys -from qtpy import PYSIDE2, PYSIDE6, PYQT5, PYQT6 - - -def test_qtdbus(): - """Test the qtpy.QtDBus namespace""" - QtDBus = pytest.importorskip("qtpy.QtDBus") - - assert QtDBus.QDBusAbstractAdaptor is not None - assert QtDBus.QDBusAbstractInterface is not None - assert QtDBus.QDBusArgument is not None - assert QtDBus.QDBusConnection is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtdesigner.py b/winpython/_vendor/qtpy/tests/test_qtdesigner.py deleted file mode 100644 index 6978b6be..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtdesigner.py +++ /dev/null @@ -1,28 +0,0 @@ -import pytest -from qtpy import PYSIDE2 - - -@pytest.mark.skipif(PYSIDE2, reason="QtDesigner is not available in PySide2") -def test_qtdesigner(): - """Test the qtpy.QtDesigner namespace.""" - QtDesigner = pytest.importorskip("qtpy.QtDesigner") - - assert QtDesigner.QAbstractExtensionFactory is not None - assert QtDesigner.QAbstractExtensionManager is not None - assert QtDesigner.QDesignerActionEditorInterface is not None - assert QtDesigner.QDesignerContainerExtension is not None - assert QtDesigner.QDesignerCustomWidgetCollectionInterface is not None - assert QtDesigner.QDesignerCustomWidgetInterface is not None - assert QtDesigner.QDesignerFormEditorInterface is not None - assert QtDesigner.QDesignerFormWindowCursorInterface is not None - assert QtDesigner.QDesignerFormWindowInterface is not None - assert QtDesigner.QDesignerFormWindowManagerInterface is not None - assert QtDesigner.QDesignerMemberSheetExtension is not None - assert QtDesigner.QDesignerObjectInspectorInterface is not None - assert QtDesigner.QDesignerPropertyEditorInterface is not None - assert QtDesigner.QDesignerPropertySheetExtension is not None - assert QtDesigner.QDesignerTaskMenuExtension is not None - assert QtDesigner.QDesignerWidgetBoxInterface is not None - assert QtDesigner.QExtensionFactory is not None - assert QtDesigner.QExtensionManager is not None - assert QtDesigner.QFormBuilder is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtgui.py b/winpython/_vendor/qtpy/tests/test_qtgui.py deleted file mode 100644 index 802129c9..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtgui.py +++ /dev/null @@ -1,81 +0,0 @@ -"""Test QtGui.""" - -import sys - -import pytest - -from qtpy import PYQT5, PYQT_VERSION, PYSIDE2, PYSIDE6, QtGui -from qtpy.tests.utils import not_using_conda - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -def test_qfontmetrics_width(qtbot): - """Test QFontMetrics and QFontMetricsF width""" - assert QtGui.QFontMetrics.width is not None - assert QtGui.QFontMetricsF.width is not None - font = QtGui.QFont("times", 24) - font_metrics = QtGui.QFontMetrics(font) - font_metricsF = QtGui.QFontMetricsF(font) - width = font_metrics.width("Test") - widthF = font_metricsF.width("Test") - assert width in range(40, 62) - assert 39 <= widthF <= 63 - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -def test_qdrag_functions(qtbot): - """Test functions mapping for QtGui.QDrag.""" - assert QtGui.QDrag.exec_ is not None - drag = QtGui.QDrag(None) - drag.exec_() - - -def test_qguiapplication_functions(): - """Test functions mapping for QtGui.QGuiApplication.""" - assert QtGui.QGuiApplication.exec_ is not None - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Segmentation fault/Aborted on Linux CI when not using conda") -def test_qtextdocument_functions(pdf_writer): - """Test functions mapping for QtGui.QTextDocument.""" - assert QtGui.QTextDocument.print_ is not None - text_document = QtGui.QTextDocument("Test") - print_device, output_path = pdf_writer - text_document.print_(print_device) - assert output_path.exists() - - -@pytest.mark.skipif(PYQT5 and PYQT_VERSION.startswith('5.9'), - reason="A specific setup with at least sip 4.9.9 is needed for PyQt5 5.9.*" - "to work with scoped enum access") -def test_enum_access(): - """Test scoped and unscoped enum access for qtpy.QtWidgets.*.""" - assert QtGui.QColor.Rgb == QtGui.QColor.Spec.Rgb - assert QtGui.QFont.AllUppercase == QtGui.QFont.Capitalization.AllUppercase - assert QtGui.QIcon.Normal == QtGui.QIcon.Mode.Normal - assert QtGui.QImage.Format_Invalid == QtGui.QImage.Format.Format_Invalid - -@pytest.mark.skipif(not (PYSIDE2 or PYSIDE6), reason="PySide{2,6} specific test") -def test_qtextcursor_moveposition(): - """Test monkeypatched QTextCursor.movePosition""" - doc = QtGui.QTextDocument("foo bar baz") - cursor = QtGui.QTextCursor(doc) - - assert not cursor.movePosition(QtGui.QTextCursor.Start) - assert cursor.movePosition(QtGui.QTextCursor.EndOfWord, mode=QtGui.QTextCursor.KeepAnchor) - assert cursor.selectedText() == "foo" - - assert cursor.movePosition(QtGui.QTextCursor.Start) - assert cursor.movePosition(QtGui.QTextCursor.WordRight, n=2, mode=QtGui.QTextCursor.KeepAnchor) - assert cursor.selectedText() == "foo bar " - - assert cursor.movePosition(QtGui.QTextCursor.Start) - assert cursor.position() == cursor.anchor() - assert cursor.movePosition(QtGui.QTextCursor.NextWord, QtGui.QTextCursor.KeepAnchor, 3) - assert cursor.selectedText() == "foo bar baz" diff --git a/winpython/_vendor/qtpy/tests/test_qthelp.py b/winpython/_vendor/qtpy/tests/test_qthelp.py deleted file mode 100644 index 9b78912d..00000000 --- a/winpython/_vendor/qtpy/tests/test_qthelp.py +++ /dev/null @@ -1,21 +0,0 @@ -"""Test for QtHelp namespace.""" - - -import pytest - - -def test_qthelp(): - """Test the qtpy.QtHelp namespace.""" - from qtpy import QtHelp - - assert QtHelp.QHelpContentItem is not None - assert QtHelp.QHelpContentModel is not None - assert QtHelp.QHelpContentWidget is not None - assert QtHelp.QHelpEngine is not None - assert QtHelp.QHelpEngineCore is not None - assert QtHelp.QHelpIndexModel is not None - assert QtHelp.QHelpIndexWidget is not None - assert QtHelp.QHelpSearchEngine is not None - assert QtHelp.QHelpSearchQuery is not None - assert QtHelp.QHelpSearchQueryWidget is not None - assert QtHelp.QHelpSearchResultWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtlocation.py b/winpython/_vendor/qtpy/tests/test_qtlocation.py deleted file mode 100644 index bb599153..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtlocation.py +++ /dev/null @@ -1,50 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -@pytest.mark.skipif(not (PYQT5 or PYSIDE2), reason="Only available in Qt5 bindings") -def test_qtlocation(): - """Test the qtpy.QtLocation namespace""" - from qtpy import QtLocation - - if PYSIDE2: - assert QtLocation.QGeoServiceProviderFactory is not None - - assert QtLocation.QGeoCodeReply is not None - assert QtLocation.QGeoCodingManager is not None - assert QtLocation.QGeoCodingManagerEngine is not None - assert QtLocation.QGeoManeuver is not None - assert QtLocation.QGeoRoute is not None - assert QtLocation.QGeoRouteReply is not None - assert QtLocation.QGeoRouteRequest is not None - assert QtLocation.QGeoRouteSegment is not None - assert QtLocation.QGeoRoutingManager is not None - assert QtLocation.QGeoRoutingManagerEngine is not None - assert QtLocation.QGeoServiceProvider is not None - assert QtLocation.QPlace is not None - assert QtLocation.QPlaceAttribute is not None - assert QtLocation.QPlaceCategory is not None - assert QtLocation.QPlaceContactDetail is not None - assert QtLocation.QPlaceContent is not None - assert QtLocation.QPlaceContentReply is not None - assert QtLocation.QPlaceContentRequest is not None - assert QtLocation.QPlaceDetailsReply is not None - assert QtLocation.QPlaceEditorial is not None - assert QtLocation.QPlaceIcon is not None - assert QtLocation.QPlaceIdReply is not None - assert QtLocation.QPlaceImage is not None - assert QtLocation.QPlaceManager is not None - assert QtLocation.QPlaceManagerEngine is not None - assert QtLocation.QPlaceMatchReply is not None - assert QtLocation.QPlaceMatchRequest is not None - assert QtLocation.QPlaceProposedSearchResult is not None - assert QtLocation.QPlaceRatings is not None - assert QtLocation.QPlaceReply is not None - assert QtLocation.QPlaceResult is not None - assert QtLocation.QPlaceReview is not None - assert QtLocation.QPlaceSearchReply is not None - assert QtLocation.QPlaceSearchRequest is not None - assert QtLocation.QPlaceSearchResult is not None - assert QtLocation.QPlaceSearchSuggestionReply is not None - assert QtLocation.QPlaceSupplier is not None - assert QtLocation.QPlaceUser is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtmacextras.py b/winpython/_vendor/qtpy/tests/test_qtmacextras.py deleted file mode 100644 index 60e8788c..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtmacextras.py +++ /dev/null @@ -1,19 +0,0 @@ -import pytest -import sys - -from qtpy import PYQT6, PYSIDE2, PYSIDE6 -from qtpy.tests.utils import using_conda - - -@pytest.mark.skipif(PYQT6 or PYSIDE6, reason="Not available on Qt6-based bindings") -@pytest.mark.skipif( - sys.platform != "darwin" or using_conda(), - reason="Only available in Qt5 bindings > 5.9 with pip on mac in CIs", -) -def test_qtmacextras(): - """Test the qtpy.QtMacExtras namespace""" - QtMacExtras = pytest.importorskip("qtpy.QtMacExtras") - - assert QtMacExtras.QMacPasteboardMime is not None - assert QtMacExtras.QMacToolBar is not None - assert QtMacExtras.QMacToolBarItem is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtmultimedia.py b/winpython/_vendor/qtpy/tests/test_qtmultimedia.py deleted file mode 100644 index 5da7ea4b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtmultimedia.py +++ /dev/null @@ -1,22 +0,0 @@ -import sys - -import pytest - -from qtpy import PYSIDE6, PYQT6 - - -@pytest.mark.skipif( - sys.platform.startswith("linux") and (PYSIDE6 or PYQT6), - reason="Needs to setup GStreamer on Linux", -) -def test_qtmultimedia(): - """Test the qtpy.QtMultimedia namespace""" - from qtpy import QtMultimedia - - assert QtMultimedia.QAudio is not None - assert QtMultimedia.QAudioInput is not None - - if not (PYSIDE6 or PYQT6): - assert QtMultimedia.QAbstractVideoBuffer is not None - assert QtMultimedia.QAudioDeviceInfo is not None - assert QtMultimedia.QSound is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtmultimediawidgets.py b/winpython/_vendor/qtpy/tests/test_qtmultimediawidgets.py deleted file mode 100644 index 3226dc37..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtmultimediawidgets.py +++ /dev/null @@ -1,17 +0,0 @@ -"""Test QtMultimediaWidgets.""" - -import pytest - -from qtpy import PYQT5, PYSIDE2 -from qtpy.tests.utils import using_conda - - -def test_qtmultimediawidgets(): - """Test the qtpy.QtMultimediaWidgets namespace""" - from qtpy import QtMultimediaWidgets - - if PYQT5 or PYSIDE2: - assert QtMultimediaWidgets.QCameraViewfinder is not None - # assert QtMultimediaWidgets.QVideoWidgetControl is not None - assert QtMultimediaWidgets.QGraphicsVideoItem is not None - assert QtMultimediaWidgets.QVideoWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtnetwork.py b/winpython/_vendor/qtpy/tests/test_qtnetwork.py deleted file mode 100644 index eb8ec387..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtnetwork.py +++ /dev/null @@ -1,41 +0,0 @@ -import pytest -from qtpy import PYSIDE2, PYSIDE6, PYQT6, QtNetwork - - -def test_qtnetwork(): - """Test the qtpy.QtNetwork namespace""" - assert QtNetwork.QAbstractNetworkCache is not None - assert QtNetwork.QNetworkCacheMetaData is not None - if not PYSIDE2: - assert QtNetwork.QHttpMultiPart is not None - assert QtNetwork.QHttpPart is not None - assert QtNetwork.QNetworkAccessManager is not None - assert QtNetwork.QNetworkCookie is not None - assert QtNetwork.QNetworkCookieJar is not None - assert QtNetwork.QNetworkDiskCache is not None - assert QtNetwork.QNetworkReply is not None - assert QtNetwork.QNetworkRequest is not None - if not (PYSIDE6 or PYQT6): - assert QtNetwork.QNetworkConfigurationManager is not None - assert QtNetwork.QNetworkConfiguration is not None - assert QtNetwork.QNetworkSession is not None - assert QtNetwork.QAuthenticator is not None - assert QtNetwork.QHostAddress is not None - assert QtNetwork.QHostInfo is not None - assert QtNetwork.QNetworkAddressEntry is not None - assert QtNetwork.QNetworkInterface is not None - assert QtNetwork.QNetworkProxy is not None - assert QtNetwork.QNetworkProxyFactory is not None - assert QtNetwork.QNetworkProxyQuery is not None - assert QtNetwork.QAbstractSocket is not None - assert QtNetwork.QLocalServer is not None - assert QtNetwork.QLocalSocket is not None - assert QtNetwork.QTcpServer is not None - assert QtNetwork.QTcpSocket is not None - assert QtNetwork.QUdpSocket is not None - assert QtNetwork.QSslCertificate is not None - assert QtNetwork.QSslCipher is not None - assert QtNetwork.QSslConfiguration is not None - assert QtNetwork.QSslError is not None - assert QtNetwork.QSslKey is not None - assert QtNetwork.QSslSocket is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtnetworkauth.py b/winpython/_vendor/qtpy/tests/test_qtnetworkauth.py deleted file mode 100644 index ba71d0ab..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtnetworkauth.py +++ /dev/null @@ -1,19 +0,0 @@ -import pytest - -from qtpy import PYQT5, PYQT6, PYSIDE2 - - -@pytest.mark.skipif( - PYQT5 or PYQT6 or PYSIDE2, - reason="Not available by default in PyQt. Not available for PySide2", -) -def test_qtnetworkauth(): - """Test the qtpy.QtNetworkAuth namespace""" - QtNetworkAuth = pytest.importorskip("qtpy.QtNetworkAuth") - - assert QtNetworkAuth.QAbstractOAuth is not None - assert QtNetworkAuth.QAbstractOAuth2 is not None - assert QtNetworkAuth.QAbstractOAuthReplyHandler is not None - assert QtNetworkAuth.QOAuth1 is not None - assert QtNetworkAuth.QOAuth1Signature is not None - assert QtNetworkAuth.QOAuth2AuthorizationCodeFlow is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtopengl.py b/winpython/_vendor/qtpy/tests/test_qtopengl.py deleted file mode 100644 index 567fed3b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtopengl.py +++ /dev/null @@ -1,25 +0,0 @@ -import pytest -from qtpy import PYSIDE2, PYSIDE6, PYQT5, PYQT6 - - -def test_qtopengl(): - """Test the qtpy.QtOpenGL namespace""" - from qtpy import QtOpenGL - - assert QtOpenGL.QOpenGLBuffer is not None - assert QtOpenGL.QOpenGLContext is not None - assert QtOpenGL.QOpenGLContextGroup is not None - assert QtOpenGL.QOpenGLDebugLogger is not None - assert QtOpenGL.QOpenGLDebugMessage is not None - assert QtOpenGL.QOpenGLFramebufferObject is not None - assert QtOpenGL.QOpenGLFramebufferObjectFormat is not None - assert QtOpenGL.QOpenGLPixelTransferOptions is not None - assert QtOpenGL.QOpenGLShader is not None - assert QtOpenGL.QOpenGLShaderProgram is not None - assert QtOpenGL.QOpenGLTexture is not None - assert QtOpenGL.QOpenGLTextureBlitter is not None - assert QtOpenGL.QOpenGLVersionProfile is not None - assert QtOpenGL.QOpenGLVertexArrayObject is not None - assert QtOpenGL.QOpenGLWindow is not None - # We do not test for QOpenGLTimeMonitor or QOpenGLTimerQuery as - # they are not present on some architectures such as armhf diff --git a/winpython/_vendor/qtpy/tests/test_qtopenglwidgets.py b/winpython/_vendor/qtpy/tests/test_qtopenglwidgets.py deleted file mode 100644 index 8cde7296..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtopenglwidgets.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest -from qtpy import PYSIDE2, PYSIDE6, PYQT5, PYQT6 - - -@pytest.mark.skipif(PYSIDE2 or PYQT5, reason="Not available in PySide2/PyQt5") -def test_qtopenglwidgets(): - """Test the qtpy.QtOpenGLWidgets namespace""" - from qtpy import QtOpenGLWidgets - - assert QtOpenGLWidgets.QOpenGLWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtpdf.py b/winpython/_vendor/qtpy/tests/test_qtpdf.py deleted file mode 100644 index f9611b1f..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtpdf.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest - - -def test_qtpdf(): - """Test the qtpy.QtPdf namespace""" - QtPdf = pytest.importorskip("qtpy.QtPdf") - - assert QtPdf.QPdfDocument is not None - assert QtPdf.QPdfLink is not None - assert QtPdf.QPdfSelection is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtpdfwidgets.py b/winpython/_vendor/qtpy/tests/test_qtpdfwidgets.py deleted file mode 100644 index 55f508cf..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtpdfwidgets.py +++ /dev/null @@ -1,8 +0,0 @@ -import pytest - - -def test_qtpdfwidgets(): - """Test the qtpy.QtPdfWidgets namespace""" - QtPdfWidgets = pytest.importorskip("qtpy.QtPdfWidgets") - - assert QtPdfWidgets.QPdfView is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtpositioning.py b/winpython/_vendor/qtpy/tests/test_qtpositioning.py deleted file mode 100644 index 750abbf5..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtpositioning.py +++ /dev/null @@ -1,27 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qtpositioning(): - """Test the qtpy.QtPositioning namespace""" - from qtpy import QtPositioning - - assert QtPositioning.QGeoAddress is not None - assert QtPositioning.QGeoAreaMonitorInfo is not None - assert QtPositioning.QGeoAreaMonitorSource is not None - assert QtPositioning.QGeoCircle is not None - assert QtPositioning.QGeoCoordinate is not None - assert QtPositioning.QGeoLocation is not None - assert QtPositioning.QGeoPath is not None - # CI for 3.7 uses Qt 5.9 - # assert QtPositioning.QGeoPolygon is not None # New in Qt 5.10 - assert QtPositioning.QGeoPositionInfo is not None - assert QtPositioning.QGeoPositionInfoSource is not None - # QGeoPositionInfoSourceFactory is not available in PyQt - # assert QtPositioning.QGeoPositionInfoSourceFactory is not None # New in Qt 5.2 - # assert QtPositioning.QGeoPositionInfoSourceFactoryV2 is not None # New in Qt 5.14 - assert QtPositioning.QGeoRectangle is not None - assert QtPositioning.QGeoSatelliteInfo is not None - assert QtPositioning.QGeoSatelliteInfoSource is not None - assert QtPositioning.QGeoShape is not None - assert QtPositioning.QNmeaPositionInfoSource is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtprintsupport.py b/winpython/_vendor/qtpy/tests/test_qtprintsupport.py deleted file mode 100644 index 952909fb..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtprintsupport.py +++ /dev/null @@ -1,41 +0,0 @@ -"""Test QtPrintSupport.""" - -import sys - -import pytest - -from qtpy import QtPrintSupport -from qtpy.tests.utils import not_using_conda - - -def test_qtprintsupport(): - """Test the qtpy.QtPrintSupport namespace""" - assert QtPrintSupport.QAbstractPrintDialog is not None - assert QtPrintSupport.QPageSetupDialog is not None - assert QtPrintSupport.QPrintDialog is not None - assert QtPrintSupport.QPrintPreviewDialog is not None - assert QtPrintSupport.QPrintEngine is not None - assert QtPrintSupport.QPrinter is not None - assert QtPrintSupport.QPrinterInfo is not None - assert QtPrintSupport.QPrintPreviewWidget is not None - - -def test_qpagesetupdialog_exec_(): - """Test qtpy.QtPrintSupport.QPageSetupDialog exec_""" - assert QtPrintSupport.QPageSetupDialog.exec_ is not None - - -def test_qprintdialog_exec_(): - """Test qtpy.QtPrintSupport.QPrintDialog exec_""" - assert QtPrintSupport.QPrintDialog.exec_ is not None - - -@pytest.mark.skipif( - sys.platform.startswith("linux") and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda", -) -def test_qprintpreviewwidget_print_(qtbot): - """Test qtpy.QtPrintSupport.QPrintPreviewWidget print_""" - assert QtPrintSupport.QPrintPreviewWidget.print_ is not None - preview_widget = QtPrintSupport.QPrintPreviewWidget() - preview_widget.print_() diff --git a/winpython/_vendor/qtpy/tests/test_qtpurchasing.py b/winpython/_vendor/qtpy/tests/test_qtpurchasing.py deleted file mode 100644 index d4c5173b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtpurchasing.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest - - -def test_qtpurchasing(): - """Test the qtpy.QtPurchasing namespace""" - QtPurchasing = pytest.importorskip("qtpy.QtPurchasing") - - assert QtPurchasing.QInAppProduct is not None - assert QtPurchasing.QInAppStore is not None - assert QtPurchasing.QInAppTransaction is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtqml.py b/winpython/_vendor/qtpy/tests/test_qtqml.py deleted file mode 100644 index 13e8db5c..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtqml.py +++ /dev/null @@ -1,33 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2, PYSIDE6 - - -def test_qtqml(): - """Test the qtpy.QtQml namespace""" - from qtpy import QtQml - - assert QtQml.QJSEngine is not None - assert QtQml.QJSValue is not None - assert QtQml.QJSValueIterator is not None - assert QtQml.QQmlAbstractUrlInterceptor is not None - assert QtQml.QQmlApplicationEngine is not None - assert QtQml.QQmlComponent is not None - assert QtQml.QQmlContext is not None - assert QtQml.QQmlEngine is not None - assert QtQml.QQmlImageProviderBase is not None - assert QtQml.QQmlError is not None - assert QtQml.QQmlExpression is not None - assert QtQml.QQmlExtensionPlugin is not None - assert QtQml.QQmlFileSelector is not None - assert QtQml.QQmlIncubationController is not None - assert QtQml.QQmlIncubator is not None - if not (PYSIDE2 or PYSIDE6): - # https://wiki.qt.io/Qt_for_Python_Missing_Bindings#QtQml - assert QtQml.QQmlListProperty is not None - assert QtQml.QQmlListReference is not None - assert QtQml.QQmlNetworkAccessManagerFactory is not None - assert QtQml.QQmlParserStatus is not None - assert QtQml.QQmlProperty is not None - assert QtQml.QQmlPropertyValueSource is not None - assert QtQml.QQmlScriptString is not None - assert QtQml.QQmlPropertyMap is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtquick.py b/winpython/_vendor/qtpy/tests/test_qtquick.py deleted file mode 100644 index add3db52..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtquick.py +++ /dev/null @@ -1,49 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qtquick(): - """Test the qtpy.QtQuick namespace""" - from qtpy import QtQuick - - if PYQT5: - assert QtQuick.QQuickCloseEvent is not None - assert QtQuick.QSGFlatColorMaterial is not None - assert QtQuick.QSGImageNode is not None - assert QtQuick.QSGMaterial is not None - assert QtQuick.QSGMaterialShader is not None - assert QtQuick.QSGOpaqueTextureMaterial is not None - assert QtQuick.QSGRectangleNode is not None - assert QtQuick.QSGRenderNode is not None - assert QtQuick.QSGRendererInterface is not None - assert QtQuick.QSGTextureMaterial is not None - assert QtQuick.QSGVertexColorMaterial is not None - - assert QtQuick.QQuickAsyncImageProvider is not None - assert QtQuick.QQuickFramebufferObject is not None - assert QtQuick.QQuickImageProvider is not None - assert QtQuick.QQuickImageResponse is not None - assert QtQuick.QQuickItem is not None - assert QtQuick.QQuickItemGrabResult is not None - assert QtQuick.QQuickPaintedItem is not None - assert QtQuick.QQuickRenderControl is not None - assert QtQuick.QQuickTextDocument is not None - assert QtQuick.QQuickTextureFactory is not None - assert QtQuick.QQuickView is not None - assert QtQuick.QQuickWindow is not None - if PYQT5 or PYSIDE2: - assert QtQuick.QSGAbstractRenderer is not None - assert QtQuick.QSGEngine is not None - assert QtQuick.QSGBasicGeometryNode is not None - assert QtQuick.QSGClipNode is not None - assert QtQuick.QSGDynamicTexture is not None - assert QtQuick.QSGGeometry is not None - assert QtQuick.QSGGeometryNode is not None - assert QtQuick.QSGMaterialType is not None - assert QtQuick.QSGNode is not None - assert QtQuick.QSGOpacityNode is not None - assert QtQuick.QSGSimpleRectNode is not None - assert QtQuick.QSGSimpleTextureNode is not None - assert QtQuick.QSGTexture is not None - assert QtQuick.QSGTextureProvider is not None - assert QtQuick.QSGTransformNode is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtquick3d.py b/winpython/_vendor/qtpy/tests/test_qtquick3d.py deleted file mode 100644 index ca614bd6..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtquick3d.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest - - -def test_qtquick3d(): - """Test the qtpy.QtQuick3D namespace""" - QtQuick3D = pytest.importorskip("qtpy.QtQuick3D") - - assert QtQuick3D.QQuick3D is not None - assert QtQuick3D.QQuick3DGeometry is not None - assert QtQuick3D.QQuick3DObject is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtquickcontrols2.py b/winpython/_vendor/qtpy/tests/test_qtquickcontrols2.py deleted file mode 100644 index a77ef001..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtquickcontrols2.py +++ /dev/null @@ -1,8 +0,0 @@ -import pytest - - -def test_qtquickcontrols2(): - """Test the qtpy.QtQuickControls2 namespace""" - QtQuickControls2 = pytest.importorskip("qtpy.QtQuickControls2") - - assert QtQuickControls2.QQuickStyle is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtquickwidgets.py b/winpython/_vendor/qtpy/tests/test_qtquickwidgets.py deleted file mode 100644 index e4df1b9d..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtquickwidgets.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qtquickwidgets(): - """Test the qtpy.QtQuickWidgets namespace""" - from qtpy import QtQuickWidgets - - assert QtQuickWidgets.QQuickWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtremoteobjects.py b/winpython/_vendor/qtpy/tests/test_qtremoteobjects.py deleted file mode 100644 index 4d91fb2f..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtremoteobjects.py +++ /dev/null @@ -1,13 +0,0 @@ -import pytest -from qtpy import PYSIDE2, PYSIDE6, PYQT5, PYQT6 - - -def test_qtremoteobjects(): - """Test the qtpy.QtRemoteObjects namespace""" - QtRemoteObjects = pytest.importorskip("qtpy.QtRemoteObjects") - - assert QtRemoteObjects.QRemoteObjectAbstractPersistedStore is not None - assert QtRemoteObjects.QRemoteObjectDynamicReplica is not None - assert QtRemoteObjects.QRemoteObjectHost is not None - assert QtRemoteObjects.QRemoteObjectHostBase is not None - assert QtRemoteObjects.QRemoteObjectNode is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtscxml.py b/winpython/_vendor/qtpy/tests/test_qtscxml.py deleted file mode 100644 index 40033799..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtscxml.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest - - -def test_qtscxml(): - """Test the qtpy.QtScxml namespace""" - QtScxml = pytest.importorskip("qtpy.QtScxml") - - assert QtScxml.QScxmlCompiler is not None - assert QtScxml.QScxmlDynamicScxmlServiceFactory is not None - assert QtScxml.QScxmlExecutableContent is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtsensors.py b/winpython/_vendor/qtpy/tests/test_qtsensors.py deleted file mode 100644 index c78cd55e..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtsensors.py +++ /dev/null @@ -1,11 +0,0 @@ -import pytest -from qtpy import PYSIDE6, PYQT6 - - -def test_qtsensors(): - """Test the qtpy.QtSensors namespace""" - QtSensors = pytest.importorskip("qtpy.QtSensors") - - assert QtSensors.QAccelerometer is not None - assert QtSensors.QAccelerometerFilter is not None - assert QtSensors.QAccelerometerReading is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtserialport.py b/winpython/_vendor/qtpy/tests/test_qtserialport.py deleted file mode 100644 index b506a459..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtserialport.py +++ /dev/null @@ -1,11 +0,0 @@ -import pytest -from qtpy import PYSIDE2 - - -@pytest.mark.skipif(PYSIDE2, reason="Not available in CI") -def test_qtserialport(): - """Test the qtpy.QtSerialPort namespace""" - QtSerialPort = pytest.importorskip("qtpy.QtSerialPort") - - assert QtSerialPort.QSerialPort is not None - assert QtSerialPort.QSerialPortInfo is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtsql.py b/winpython/_vendor/qtpy/tests/test_qtsql.py deleted file mode 100644 index f9dcf96b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtsql.py +++ /dev/null @@ -1,87 +0,0 @@ -"""Test QtSql.""" - -import sys - -import pytest - -from qtpy import PYSIDE2, PYSIDE_VERSION, QtSql - - -@pytest.fixture -def database_connection(): - """Create a database connection""" - connection = QtSql.QSqlDatabase.addDatabase("QSQLITE") - yield connection - connection.close() - - -def test_qtsql(): - """Test the qtpy.QtSql namespace""" - assert QtSql.QSqlDatabase is not None - assert QtSql.QSqlDriverCreatorBase is not None - assert QtSql.QSqlDriver is not None - assert QtSql.QSqlError is not None - assert QtSql.QSqlField is not None - assert QtSql.QSqlIndex is not None - assert QtSql.QSqlQuery is not None - assert QtSql.QSqlRecord is not None - assert QtSql.QSqlResult is not None - assert QtSql.QSqlQueryModel is not None - assert QtSql.QSqlRelationalDelegate is not None - assert QtSql.QSqlRelation is not None - assert QtSql.QSqlRelationalTableModel is not None - assert QtSql.QSqlTableModel is not None - - # Following modules are not (yet) part of any wrapper: - # QSqlDriverCreator, QSqlDriverPlugin - - -@pytest.mark.skipif( - sys.platform == "win32" and PYSIDE2 and PYSIDE_VERSION.startswith("5.13"), - reason="SQLite driver unavailable on PySide 5.13.2 with Windows", -) -def test_qtsql_members_aliases(database_connection): - """ - Test aliased methods over qtpy.QtSql members including: - - * qtpy.QtSql.QSqlDatabase.exec_ - * qtpy.QtSql.QSqlQuery.exec_ - * qtpy.QtSql.QSqlResult.exec_ - """ - assert QtSql.QSqlDatabase.exec_ is not None - assert QtSql.QSqlQuery.exec_ is not None - assert QtSql.QSqlResult.exec_ is not None - - assert database_connection.open() - database_connection.setDatabaseName("test.sqlite") - QtSql.QSqlDatabase.exec_( - database_connection, - """ - CREATE TABLE test ( - id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE NOT NULL, - name VARCHAR(40) NOT NULL - ) - """, - ) - - # Created table 'test' and 'sqlite_sequence' - assert len(database_connection.tables()) == 2 - - insert_table_query = QtSql.QSqlQuery() - assert insert_table_query.exec_( - """ - INSERT INTO test (name) VALUES ( - "TESTING" - ) - """ - ) - - select_table_query = QtSql.QSqlQuery() - select_table_query.prepare( - """ - SELECT * FROM test - """ - ) - select_table_query.exec_() - record = select_table_query.record() - assert not record.isEmpty() diff --git a/winpython/_vendor/qtpy/tests/test_qtstatemachine.py b/winpython/_vendor/qtpy/tests/test_qtstatemachine.py deleted file mode 100644 index 5fa986b0..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtstatemachine.py +++ /dev/null @@ -1,16 +0,0 @@ -import pytest - - -def test_qtstatemachine(): - """Test the qtpy.QtStateMachine namespace""" - QtStateMachine = pytest.importorskip("qtpy.QtStateMachine") - - assert QtStateMachine.QAbstractState is not None - assert QtStateMachine.QAbstractTransition is not None - assert QtStateMachine.QEventTransition is not None - assert QtStateMachine.QFinalState is not None - assert QtStateMachine.QHistoryState is not None - assert QtStateMachine.QKeyEventTransition is not None - assert QtStateMachine.QMouseEventTransition is not None - assert QtStateMachine.QSignalTransition is not None - assert QtStateMachine.QState is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtsvg.py b/winpython/_vendor/qtpy/tests/test_qtsvg.py deleted file mode 100644 index d1a5cce7..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtsvg.py +++ /dev/null @@ -1,13 +0,0 @@ -import pytest -from qtpy import PYSIDE6, PYQT6 - - -def test_qtsvg(): - """Test the qtpy.QtSvg namespace""" - QtSvg = pytest.importorskip("qtpy.QtSvg") - - if not (PYSIDE6 or PYQT6): - assert QtSvg.QGraphicsSvgItem is not None - assert QtSvg.QSvgWidget is not None - assert QtSvg.QSvgGenerator is not None - assert QtSvg.QSvgRenderer is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtsvgwidgets.py b/winpython/_vendor/qtpy/tests/test_qtsvgwidgets.py deleted file mode 100644 index 75339250..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtsvgwidgets.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest - - -def test_qtsvgwidgets(): - """Test the qtpy.QtSvgWidgets namespace""" - QtSvgWidgets = pytest.importorskip("qtpy.QtSvgWidgets") - - assert QtSvgWidgets.QGraphicsSvgItem is not None - assert QtSvgWidgets.QSvgWidget is not None diff --git a/winpython/_vendor/qtpy/tests/test_qttest.py b/winpython/_vendor/qtpy/tests/test_qttest.py deleted file mode 100644 index 64554916..00000000 --- a/winpython/_vendor/qtpy/tests/test_qttest.py +++ /dev/null @@ -1,22 +0,0 @@ -import pytest -from packaging import version -from qtpy import QtTest, PYQT5, PYQT6, PYSIDE6, PYQT_VERSION - - -def test_qttest(): - """Test the qtpy.QtTest namespace""" - assert QtTest.QTest is not None - - if PYQT5 or PYQT6 or PYSIDE6: - assert QtTest.QSignalSpy is not None - - if (PYQT5 and version.parse(PYQT_VERSION) >= version.parse('5.11')) or PYQT6 or PYSIDE6: - assert QtTest.QAbstractItemModelTester is not None - - -@pytest.mark.skipif(PYQT5 and PYQT_VERSION.startswith('5.9'), - reason="A specific setup with at least sip 4.9.9 is needed for PyQt5 5.9.*" - "to work with scoped enum access") -def test_enum_access(): - """Test scoped and unscoped enum access for qtpy.QtTest.*.""" - assert QtTest.QTest.Click == QtTest.QTest.KeyAction.Click diff --git a/winpython/_vendor/qtpy/tests/test_qttexttospeech.py b/winpython/_vendor/qtpy/tests/test_qttexttospeech.py deleted file mode 100644 index f62bc3e0..00000000 --- a/winpython/_vendor/qtpy/tests/test_qttexttospeech.py +++ /dev/null @@ -1,18 +0,0 @@ -import pytest -from packaging import version -from qtpy import PYQT5, PYSIDE2, PYQT_VERSION - - -@pytest.mark.skipif( - not ((PYQT5 and version.parse(PYQT_VERSION) >= version.parse("5.15.1")) or PYSIDE2), - reason="Only available in Qt5 bindings (PyQt5 >= 5.15.1 or PySide2)", -) -def test_qttexttospeech(): - """Test the qtpy.QtTextToSpeech namespace.""" - from qtpy import QtTextToSpeech - - assert QtTextToSpeech.QTextToSpeech is not None - assert QtTextToSpeech.QVoice is not None - - if PYSIDE2: - assert QtTextToSpeech.QTextToSpeechEngine is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtuitools.py b/winpython/_vendor/qtpy/tests/test_qtuitools.py deleted file mode 100644 index 13ee4026..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtuitools.py +++ /dev/null @@ -1,8 +0,0 @@ -import pytest - - -def test_qtuitools(): - """Test the qtpy.QtUiTools namespace""" - QtUiTools = pytest.importorskip("qtpy.QtUiTools") - - assert QtUiTools.QUiLoader is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwebchannel.py b/winpython/_vendor/qtpy/tests/test_qtwebchannel.py deleted file mode 100644 index 4337241f..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwebchannel.py +++ /dev/null @@ -1,10 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qtwebchannel(): - """Test the qtpy.QtWebChannel namespace""" - from qtpy import QtWebChannel - - assert QtWebChannel.QWebChannel is not None - assert QtWebChannel.QWebChannelAbstractTransport is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwebenginecore.py b/winpython/_vendor/qtpy/tests/test_qtwebenginecore.py deleted file mode 100644 index a00287ee..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwebenginecore.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest -from qtpy import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - - -def test_qtwebenginecore(): - """Test the qtpy.QtWebEngineCore namespace""" - QtWebEngineCore = pytest.importorskip("qtpy.QtWebEngineCore") - - assert QtWebEngineCore.QWebEngineHttpRequest is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwebenginequick.py b/winpython/_vendor/qtpy/tests/test_qtwebenginequick.py deleted file mode 100644 index 50b4bc56..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwebenginequick.py +++ /dev/null @@ -1,12 +0,0 @@ -import pytest -from qtpy import PYQT5, PYQT6, PYSIDE2, PYSIDE6 - - -@pytest.mark.skipif(PYQT5 or PYSIDE2, reason="Only available in Qt6 bindings") -def test_qtwebenginequick(): - """Test the qtpy.QtWebEngineQuick namespace""" - - QtWebEngineQuick = pytest.importorskip("qtpy.QtWebEngineQuick") - - assert QtWebEngineQuick.QtWebEngineQuick is not None - assert QtWebEngineQuick.QQuickWebEngineProfile is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwebenginewidgets.py b/winpython/_vendor/qtpy/tests/test_qtwebenginewidgets.py deleted file mode 100644 index 680de397..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwebenginewidgets.py +++ /dev/null @@ -1,14 +0,0 @@ -import pytest -from qtpy import PYSIDE6, PYQT6 - - -@pytest.mark.skipif(PYSIDE6 or PYQT6, reason="Only available in Qt<6,>=6.2 bindings") -def test_qtwebenginewidgets(): - """Test the qtpy.QtWebEngineWidget namespace""" - - QtWebEngineWidgets = pytest.importorskip("qtpy.QtWebEngineWidgets") - - assert QtWebEngineWidgets.QWebEnginePage is not None - assert QtWebEngineWidgets.QWebEngineView is not None - assert QtWebEngineWidgets.QWebEngineSettings is not None - assert QtWebEngineWidgets.QWebEngineScript is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwebsockets.py b/winpython/_vendor/qtpy/tests/test_qtwebsockets.py deleted file mode 100644 index e03440bf..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwebsockets.py +++ /dev/null @@ -1,13 +0,0 @@ -import pytest -from qtpy import PYQT5, PYSIDE2 - - -def test_qtwebsockets(): - """Test the qtpy.QtWebSockets namespace""" - from qtpy import QtWebSockets - - assert QtWebSockets.QMaskGenerator is not None - assert QtWebSockets.QWebSocket is not None - assert QtWebSockets.QWebSocketCorsAuthenticator is not None - assert QtWebSockets.QWebSocketProtocol is not None - assert QtWebSockets.QWebSocketServer is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtwidgets.py b/winpython/_vendor/qtpy/tests/test_qtwidgets.py deleted file mode 100644 index a04e662d..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwidgets.py +++ /dev/null @@ -1,114 +0,0 @@ -"""Test QtWidgets.""" - -import sys - -import pytest - -from qtpy import PYQT5, PYQT_VERSION, QtCore, QtGui, QtWidgets -from qtpy.tests.utils import using_conda, not_using_conda - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -def test_qtextedit_functions(qtbot, pdf_writer): - """Test functions mapping for QtWidgets.QTextEdit.""" - assert QtWidgets.QTextEdit.setTabStopWidth - assert QtWidgets.QTextEdit.tabStopWidth - assert QtWidgets.QTextEdit.print_ - textedit_widget = QtWidgets.QTextEdit(None) - textedit_widget.setTabStopWidth(90) - assert textedit_widget.tabStopWidth() == 90 - print_device, output_path = pdf_writer - textedit_widget.print_(print_device) - assert output_path.exists() - - -def test_qlineedit_functions(): - """Test functions mapping for QtWidgets.QLineEdit""" - assert QtWidgets.QLineEdit.getTextMargins - - -def test_qundocommand_object(): - """Test object aliasing for QUndoCommand""" - assert QtWidgets.QUndoCommand - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -def test_qplaintextedit_functions(qtbot, pdf_writer): - """Test functions mapping for QtWidgets.QPlainTextEdit.""" - assert QtWidgets.QPlainTextEdit.setTabStopWidth - assert QtWidgets.QPlainTextEdit.tabStopWidth - assert QtWidgets.QPlainTextEdit.print_ - plaintextedit_widget = QtWidgets.QPlainTextEdit(None) - plaintextedit_widget.setTabStopWidth(90) - assert plaintextedit_widget.tabStopWidth() == 90 - print_device, output_path = pdf_writer - plaintextedit_widget.print_(print_device) - assert output_path.exists() - - -def test_qapplication_functions(): - """Test functions mapping for QtWidgets.QApplication.""" - assert QtWidgets.QApplication.exec_ - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -@pytest.mark.skipif( - sys.platform == 'darwin' and sys.version_info[:2] == (3, 7), - reason="Stalls on macOS CI with Python 3.7") -def test_qdialog_functions(qtbot): - """Test functions mapping for QtWidgets.QDialog.""" - assert QtWidgets.QDialog.exec_ - dialog = QtWidgets.QDialog(None) - QtCore.QTimer.singleShot(100, dialog.accept) - dialog.exec_() - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -@pytest.mark.skipif( - sys.platform == 'darwin' and sys.version_info[:2] == (3, 7), - reason="Stalls on macOS CI with Python 3.7") -def test_qdialog_subclass(qtbot): - """Test functions mapping for QtWidgets.QDialog when using a subclass""" - assert QtWidgets.QDialog.exec_ - class CustomDialog(QtWidgets.QDialog): - def __init__(self): - super().__init__(None) - self.setWindowTitle("Testing") - assert CustomDialog.exec_ - dialog = CustomDialog() - QtCore.QTimer.singleShot(100, dialog.accept) - dialog.exec_() - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Fatal Python error: Aborted on Linux CI when not using conda") -@pytest.mark.skipif( - sys.platform == 'darwin' and sys.version_info[:2] == (3, 7), - reason="Stalls on macOS CI with Python 3.7") -def test_qmenu_functions(qtbot): - """Test functions mapping for QtWidgets.QDialog.""" - assert QtWidgets.QMenu.exec_ - menu = QtWidgets.QMenu(None) - QtCore.QTimer.singleShot(100, menu.close) - menu.exec_() - - -@pytest.mark.skipif(PYQT5 and PYQT_VERSION.startswith('5.9'), - reason="A specific setup with at least sip 4.9.9 is needed for PyQt5 5.9.*" - "to work with scoped enum access") -def test_enum_access(): - """Test scoped and unscoped enum access for qtpy.QtWidgets.*.""" - assert QtWidgets.QFileDialog.AcceptOpen == QtWidgets.QFileDialog.AcceptMode.AcceptOpen - assert QtWidgets.QMessageBox.InvalidRole == QtWidgets.QMessageBox.ButtonRole.InvalidRole - assert QtWidgets.QStyle.State_None == QtWidgets.QStyle.StateFlag.State_None - assert QtWidgets.QSlider.TicksLeft == QtWidgets.QSlider.TickPosition.TicksAbove - assert QtWidgets.QStyle.SC_SliderGroove == QtWidgets.QStyle.SubControl.SC_SliderGroove diff --git a/winpython/_vendor/qtpy/tests/test_qtwinextras.py b/winpython/_vendor/qtpy/tests/test_qtwinextras.py deleted file mode 100644 index d6c7f05d..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtwinextras.py +++ /dev/null @@ -1,33 +0,0 @@ -"""Test QtWinExtras.""" - -import sys - -import pytest - -from qtpy import PYQT6, PYSIDE2, PYSIDE6 -from qtpy.tests.utils import using_conda - - -@pytest.mark.skipif(PYQT6 or PYSIDE6, reason="Not available on Qt6-based bindings") -@pytest.mark.skipif( - sys.platform != "win32" or using_conda(), - reason="Only available in Qt5 bindings > 5.9 with pip on Windows in CIs", -) -def test_qtwinextras(): - """Test the qtpy.QtWinExtras namespace""" - from qtpy import QtWinExtras - - assert QtWinExtras.QWinJumpList is not None - assert QtWinExtras.QWinJumpListCategory is not None - assert QtWinExtras.QWinJumpListItem is not None - assert QtWinExtras.QWinTaskbarButton is not None - assert QtWinExtras.QWinTaskbarProgress is not None - assert QtWinExtras.QWinThumbnailToolBar is not None - assert QtWinExtras.QWinThumbnailToolButton is not None - if not PYSIDE2: # See https://bugreports.qt.io/browse/PYSIDE-1047 - assert QtWinExtras.QtWin is not None - - if PYSIDE2: - assert QtWinExtras.QWinColorizationChangeEvent is not None - assert QtWinExtras.QWinCompositionChangeEvent is not None - assert QtWinExtras.QWinEvent is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtx11extras.py b/winpython/_vendor/qtpy/tests/test_qtx11extras.py deleted file mode 100644 index f1e683dc..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtx11extras.py +++ /dev/null @@ -1,9 +0,0 @@ -import pytest - - -def test_qtwinextras(): - QtX11Extras = pytest.importorskip("qtpy.QtX11Extras") - - assert QtX11Extras is not None - # This module doesn't seem to contain any classes - # See https://doc.qt.io/qt-5/qtx11extras-module.html diff --git a/winpython/_vendor/qtpy/tests/test_qtxml.py b/winpython/_vendor/qtpy/tests/test_qtxml.py deleted file mode 100644 index 432d975b..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtxml.py +++ /dev/null @@ -1,24 +0,0 @@ -import pytest - - -def test_qtxml(): - """Test the qtpy.QtXml namespace""" - from qtpy import QtXml - - assert QtXml.QDomAttr is not None - assert QtXml.QDomCDATASection is not None - assert QtXml.QDomCharacterData is not None - assert QtXml.QDomComment is not None - assert QtXml.QDomDocument is not None - assert QtXml.QDomDocumentFragment is not None - assert QtXml.QDomDocumentType is not None - assert QtXml.QDomElement is not None - assert QtXml.QDomEntity is not None - assert QtXml.QDomEntityReference is not None - assert QtXml.QDomImplementation is not None - assert QtXml.QDomNamedNodeMap is not None - assert QtXml.QDomNode is not None - assert QtXml.QDomNodeList is not None - assert QtXml.QDomNotation is not None - assert QtXml.QDomProcessingInstruction is not None - assert QtXml.QDomText is not None diff --git a/winpython/_vendor/qtpy/tests/test_qtxmlpatterns.py b/winpython/_vendor/qtpy/tests/test_qtxmlpatterns.py deleted file mode 100644 index c75d91d2..00000000 --- a/winpython/_vendor/qtpy/tests/test_qtxmlpatterns.py +++ /dev/null @@ -1,26 +0,0 @@ -import pytest -from qtpy import PYSIDE2, PYSIDE6, PYQT6 - - -@pytest.mark.skipif((PYSIDE6 or PYQT6), reason="not available with qt 6.0") -def test_qtxmlpatterns(): - """Test the qtpy.QtXmlPatterns namespace""" - from qtpy import QtXmlPatterns - - assert QtXmlPatterns.QAbstractMessageHandler is not None - assert QtXmlPatterns.QAbstractUriResolver is not None - assert QtXmlPatterns.QAbstractXmlNodeModel is not None - assert QtXmlPatterns.QAbstractXmlReceiver is not None - if not PYSIDE2: - assert QtXmlPatterns.QSimpleXmlNodeModel is not None - assert QtXmlPatterns.QSourceLocation is not None - assert QtXmlPatterns.QXmlFormatter is not None - assert QtXmlPatterns.QXmlItem is not None - assert QtXmlPatterns.QXmlName is not None - assert QtXmlPatterns.QXmlNamePool is not None - assert QtXmlPatterns.QXmlNodeModelIndex is not None - assert QtXmlPatterns.QXmlQuery is not None - assert QtXmlPatterns.QXmlResultItems is not None - assert QtXmlPatterns.QXmlSchema is not None - assert QtXmlPatterns.QXmlSchemaValidator is not None - assert QtXmlPatterns.QXmlSerializer is not None diff --git a/winpython/_vendor/qtpy/tests/test_shiboken.py b/winpython/_vendor/qtpy/tests/test_shiboken.py deleted file mode 100644 index 4920fa55..00000000 --- a/winpython/_vendor/qtpy/tests/test_shiboken.py +++ /dev/null @@ -1,12 +0,0 @@ -import pytest - - -def test_shiboken(): - """Test the qtpy.shiboken namespace""" - shiboken = pytest.importorskip("qtpy.shiboken") - - assert shiboken.isValid is not None - assert shiboken.wrapInstance is not None - assert shiboken.getCppPointer is not None - assert shiboken.delete is not None - assert shiboken.dump is not None diff --git a/winpython/_vendor/qtpy/tests/test_sip.py b/winpython/_vendor/qtpy/tests/test_sip.py deleted file mode 100644 index 620d1fdf..00000000 --- a/winpython/_vendor/qtpy/tests/test_sip.py +++ /dev/null @@ -1,25 +0,0 @@ -import pytest - - -def test_sip(): - """Test the qtpy.sip namespace""" - sip = pytest.importorskip("qtpy.sip") - - assert sip.assign is not None - assert sip.cast is not None - assert sip.delete is not None - assert sip.dump is not None - assert sip.enableautoconversion is not None - assert sip.isdeleted is not None - assert sip.ispycreated is not None - assert sip.ispyowned is not None - assert sip.setdeleted is not None - assert sip.settracemask is not None - assert sip.simplewrapper is not None - assert sip.transferback is not None - assert sip.transferto is not None - assert sip.unwrapinstance is not None - assert sip.voidptr is not None - assert sip.wrapinstance is not None - assert sip.wrapper is not None - assert sip.wrappertype is not None diff --git a/winpython/_vendor/qtpy/tests/test_uic.py b/winpython/_vendor/qtpy/tests/test_uic.py deleted file mode 100644 index 1d9a791f..00000000 --- a/winpython/_vendor/qtpy/tests/test_uic.py +++ /dev/null @@ -1,121 +0,0 @@ -import contextlib -import os -import sys -import warnings - -import pytest - -from qtpy import PYSIDE6, PYSIDE2, QtWidgets -from qtpy.QtWidgets import QComboBox - -if PYSIDE2: - pytest.importorskip("pyside2uic", reason="pyside2uic not installed") - -from qtpy import uic -from qtpy.tests.utils import not_using_conda - - -QCOMBOBOX_SUBCLASS = """ -from qtpy.QtWidgets import QComboBox -class _QComboBoxSubclass(QComboBox): - pass -""" - -@contextlib.contextmanager -def enabled_qcombobox_subclass(temp_dir_path): - """ - Context manager that sets up a temporary module with a QComboBox subclass - and then removes it once we are done. - """ - - with open( - temp_dir_path / 'qcombobox_subclass.py', - mode='w', - encoding="utf-8", - ) as f: - f.write(QCOMBOBOX_SUBCLASS) - - sys.path.insert(0, str(temp_dir_path)) - - yield - - sys.path.pop(0) - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Segfaults on Linux when not using conda under all bindings (PYSIDE2/6 & PYQT5/6)") -def test_load_ui(qtbot): - """ - Make sure that the patched loadUi function behaves as expected with a - simple .ui file. - """ - with warnings.catch_warnings(): - warnings.filterwarnings( - "ignore", category=DeprecationWarning, message=".*mode.*") - ui = uic.loadUi(os.path.join(os.path.dirname(__file__), 'test.ui')) - - assert isinstance(ui.pushButton, QtWidgets.QPushButton) - assert isinstance(ui.comboBox, QComboBox) - - -@pytest.mark.skipif( - PYSIDE2 or PYSIDE6, - reason="PySide2uic not consistently installed across platforms/versions") -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Segfaults on Linux when not using conda under all bindings (PYSIDE2/6 & PYQT5/6)") -def test_load_ui_type(qtbot): - """ - Make sure that the patched loadUiType function behaves as expected with a - simple .ui file. - """ - with warnings.catch_warnings(): - warnings.filterwarnings( - "ignore", category=DeprecationWarning, message=".*mode.*") - ui_type, ui_base_type = uic.loadUiType( - os.path.join(os.path.dirname(__file__), 'test.ui')) - assert ui_type.__name__ == 'Ui_Form' - - class Widget(ui_base_type, ui_type): - def __init__(self): - super().__init__() - self.setupUi(self) - - ui = Widget() - assert isinstance(ui, QtWidgets.QWidget) - assert isinstance(ui.pushButton, QtWidgets.QPushButton) - assert isinstance(ui.comboBox, QComboBox) - - -@pytest.mark.skipif( - sys.platform.startswith('linux') and not_using_conda(), - reason="Segfaults on Linux when not using conda under all bindings (PYSIDE2/6 & PYQT5/6)") -def test_load_ui_custom_auto(qtbot, tmp_path): - """ - Test that we can load a .ui file with custom widgets without having to - explicitly specify a dictionary of custom widgets, even in the case of - PySide. - """ - with enabled_qcombobox_subclass(tmp_path): - from qcombobox_subclass import _QComboBoxSubclass - with warnings.catch_warnings(): - warnings.filterwarnings( - "ignore", category=DeprecationWarning, message=".*mode.*") - ui = uic.loadUi( - os.path.join(os.path.dirname(__file__), 'test_custom.ui')) - - assert isinstance(ui.pushButton, QtWidgets.QPushButton) - assert isinstance(ui.comboBox, _QComboBoxSubclass) - - -def test_load_full_uic(): - """Test that we load the full uic objects.""" - QT_API = os.environ.get('QT_API', '').lower() - if QT_API.startswith('pyside'): - assert hasattr(uic, 'loadUi') - assert hasattr(uic, 'loadUiType') - else: - objects = ['compileUi', 'compileUiDir', 'loadUi', 'loadUiType', - 'widgetPluginPath'] - assert all(hasattr(uic, o) for o in objects) diff --git a/winpython/_vendor/qtpy/tests/uic.py b/winpython/_vendor/qtpy/tests/uic.py deleted file mode 100644 index 6f53e4f5..00000000 --- a/winpython/_vendor/qtpy/tests/uic.py +++ /dev/null @@ -1,285 +0,0 @@ -import os - -from . import PYSIDE6, PYSIDE2, PYQT5, PYQT6 -from .QtWidgets import QComboBox - - -if PYQT6: - - from PyQt6.uic import * - -elif PYQT5: - - from PyQt5.uic import * - -else: - - __all__ = ['loadUi', 'loadUiType'] - - # In PySide, loadUi does not exist, so we define it using QUiLoader, and - # then make sure we expose that function. This is adapted from qt-helpers - # which was released under a 3-clause BSD license: - # qt-helpers - a common front-end to various Qt modules - # - # Copyright (c) 2015, Chris Beaumont and Thomas Robitaille - # - # All rights reserved. - # - # Redistribution and use in source and binary forms, with or without - # modification, are permitted provided that the following conditions are - # met: - # - # * Redistributions of source code must retain the above copyright - # notice, this list of conditions and the following disclaimer. - # * Redistributions in binary form must reproduce the above copyright - # notice, this list of conditions and the following disclaimer in the - # documentation and/or other materials provided with the - # distribution. - # * Neither the name of the Glue project nor the names of its contributors - # may be used to endorse or promote products derived from this software - # without specific prior written permission. - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS - # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR - # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # - # Which itself was based on the solution at - # - # https://gist.github.com/cpbotha/1b42a20c8f3eb9bb7cb8 - # - # which was released under the MIT license: - # - # Copyright (c) 2011 Sebastian Wiesner - # Modifications by Charl Botha - # - # Permission is hereby granted, free of charge, to any person obtaining a - # copy of this software and associated documentation files (the "Software"), - # to deal in the Software without restriction, including without limitation - # the rights to use, copy, modify, merge, publish, distribute, sublicense, - # and/or sell copies of the Software, and to permit persons to whom the - # Software is furnished to do so, subject to the following conditions: - # - # The above copyright notice and this permission notice shall be included in - # all copies or substantial portions of the Software. - # - # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - # DEALINGS IN THE SOFTWARE. - - if PYSIDE6: - from PySide6.QtCore import QMetaObject - from PySide6.QtUiTools import QUiLoader - elif PYSIDE2: - from PySide2.QtCore import QMetaObject - from PySide2.QtUiTools import QUiLoader - try: - from pyside2uic import compileUi - # Patch UIParser as xml.etree.Elementree.Element.getiterator - # was deprecated since Python 3.2 and removed in Python 3.9 - # https://docs.python.org/3.9/whatsnew/3.9.html#removed - from pyside2uic.uiparser import UIParser - from xml.etree.ElementTree import Element - class ElemPatched(Element): - def getiterator(self, *args, **kwargs): - return self.iter(*args, **kwargs) - def readResources(self, elem): - return self._readResources(ElemPatched(elem)) - UIParser._readResources = UIParser.readResources - UIParser.readResources = readResources - except ImportError: - pass - - class UiLoader(QUiLoader): - """ - Subclass of :class:`~PySide.QtUiTools.QUiLoader` to create the user - interface in a base instance. - - Unlike :class:`~PySide.QtUiTools.QUiLoader` itself this class does not - create a new instance of the top-level widget, but creates the user - interface in an existing instance of the top-level class if needed. - - This mimics the behaviour of :func:`PyQt4.uic.loadUi`. - """ - - def __init__(self, baseinstance, customWidgets=None): - """ - Create a loader for the given ``baseinstance``. - - The user interface is created in ``baseinstance``, which must be an - instance of the top-level class in the user interface to load, or a - subclass thereof. - - ``customWidgets`` is a dictionary mapping from class name to class - object for custom widgets. Usually, this should be done by calling - registerCustomWidget on the QUiLoader, but with PySide 1.1.2 on - Ubuntu 12.04 x86_64 this causes a segfault. - - ``parent`` is the parent object of this loader. - """ - - QUiLoader.__init__(self, baseinstance) - - self.baseinstance = baseinstance - - if customWidgets is None: - self.customWidgets = {} - else: - self.customWidgets = customWidgets - - def createWidget(self, class_name, parent=None, name=''): - """ - Function that is called for each widget defined in ui file, - overridden here to populate baseinstance instead. - """ - - if parent is None and self.baseinstance: - # supposed to create the top-level widget, return the base - # instance instead - return self.baseinstance - - else: - - # For some reason, Line is not in the list of available - # widgets, but works fine, so we have to special case it here. - if class_name in self.availableWidgets() or class_name == 'Line': - # create a new widget for child widgets - widget = QUiLoader.createWidget(self, class_name, parent, name) - - else: - # If not in the list of availableWidgets, must be a custom - # widget. This will raise KeyError if the user has not - # supplied the relevant class_name in the dictionary or if - # customWidgets is empty. - try: - widget = self.customWidgets[class_name](parent) - except KeyError as error: - raise Exception( - f'No custom widget {class_name} ' - 'found in customWidgets' - ) from error - - if self.baseinstance: - # set an attribute for the new child widget on the base - # instance, just like PyQt4.uic.loadUi does. - setattr(self.baseinstance, name, widget) - - return widget - - def _get_custom_widgets(ui_file): - """ - This function is used to parse a ui file and look for the - section, then automatically load all the custom widget classes. - """ - - import sys - import importlib - from xml.etree.ElementTree import ElementTree - - # Parse the UI file - etree = ElementTree() - ui = etree.parse(ui_file) - - # Get the customwidgets section - custom_widgets = ui.find('customwidgets') - - if custom_widgets is None: - return {} - - custom_widget_classes = {} - - for custom_widget in list(custom_widgets): - - cw_class = custom_widget.find('class').text - cw_header = custom_widget.find('header').text - - module = importlib.import_module(cw_header) - - custom_widget_classes[cw_class] = getattr(module, cw_class) - - return custom_widget_classes - - def loadUi(uifile, baseinstance=None, workingDirectory=None): - """ - Dynamically load a user interface from the given ``uifile``. - - ``uifile`` is a string containing a file name of the UI file to load. - - If ``baseinstance`` is ``None``, the a new instance of the top-level - widget will be created. Otherwise, the user interface is created within - the given ``baseinstance``. In this case ``baseinstance`` must be an - instance of the top-level widget class in the UI file to load, or a - subclass thereof. In other words, if you've created a ``QMainWindow`` - interface in the designer, ``baseinstance`` must be a ``QMainWindow`` - or a subclass thereof, too. You cannot load a ``QMainWindow`` UI file - with a plain :class:`~PySide.QtGui.QWidget` as ``baseinstance``. - - :method:`~PySide.QtCore.QMetaObject.connectSlotsByName()` is called on - the created user interface, so you can implemented your slots according - to its conventions in your widget class. - - Return ``baseinstance``, if ``baseinstance`` is not ``None``. Otherwise - return the newly created instance of the user interface. - """ - - # We parse the UI file and import any required custom widgets - customWidgets = _get_custom_widgets(uifile) - - loader = UiLoader(baseinstance, customWidgets) - - if workingDirectory is not None: - loader.setWorkingDirectory(workingDirectory) - - widget = loader.load(uifile) - QMetaObject.connectSlotsByName(widget) - return widget - - def loadUiType(uifile, from_imports=False): - """Load a .ui file and return the generated form class and - the Qt base class. - - The "loadUiType" command convert the ui file to py code - in-memory first and then execute it in a special frame to - retrieve the form_class. - - Credit: https://stackoverflow.com/a/14195313/15954282 - """ - - import sys - from io import StringIO - from xml.etree.ElementTree import ElementTree - - from . import QtWidgets - - # Parse the UI file - etree = ElementTree() - ui = etree.parse(uifile) - - widget_class = ui.find('widget').get('class') - form_class = ui.find('class').text - - with open(uifile, encoding="utf-8") as fd: - code_stream = StringIO() - frame = {} - - compileUi(fd, code_stream, indent=0, from_imports=from_imports) - pyc = compile(code_stream.getvalue(), '', 'exec') - exec(pyc, frame) - - # Fetch the base_class and form class based on their type in the - # xml from designer - form_class = frame['Ui_%s' % form_class] - base_class = getattr(QtWidgets, widget_class) - - return form_class, base_class diff --git a/winpython/_vendor/qtpy/tests/utils.py b/winpython/_vendor/qtpy/tests/utils.py deleted file mode 100644 index f9e36ddc..00000000 --- a/winpython/_vendor/qtpy/tests/utils.py +++ /dev/null @@ -1,11 +0,0 @@ -"""Utility functions for tests.""" - -import os - - -def using_conda(): - return os.environ.get('USE_CONDA', 'Yes') == 'Yes' - - -def not_using_conda(): - return os.environ.get('USE_CONDA', 'No') == 'No' diff --git a/winpython/_vendor/qtpy/uic.py b/winpython/_vendor/qtpy/uic.py deleted file mode 100644 index 6f53e4f5..00000000 --- a/winpython/_vendor/qtpy/uic.py +++ /dev/null @@ -1,285 +0,0 @@ -import os - -from . import PYSIDE6, PYSIDE2, PYQT5, PYQT6 -from .QtWidgets import QComboBox - - -if PYQT6: - - from PyQt6.uic import * - -elif PYQT5: - - from PyQt5.uic import * - -else: - - __all__ = ['loadUi', 'loadUiType'] - - # In PySide, loadUi does not exist, so we define it using QUiLoader, and - # then make sure we expose that function. This is adapted from qt-helpers - # which was released under a 3-clause BSD license: - # qt-helpers - a common front-end to various Qt modules - # - # Copyright (c) 2015, Chris Beaumont and Thomas Robitaille - # - # All rights reserved. - # - # Redistribution and use in source and binary forms, with or without - # modification, are permitted provided that the following conditions are - # met: - # - # * Redistributions of source code must retain the above copyright - # notice, this list of conditions and the following disclaimer. - # * Redistributions in binary form must reproduce the above copyright - # notice, this list of conditions and the following disclaimer in the - # documentation and/or other materials provided with the - # distribution. - # * Neither the name of the Glue project nor the names of its contributors - # may be used to endorse or promote products derived from this software - # without specific prior written permission. - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS - # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR - # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # - # Which itself was based on the solution at - # - # https://gist.github.com/cpbotha/1b42a20c8f3eb9bb7cb8 - # - # which was released under the MIT license: - # - # Copyright (c) 2011 Sebastian Wiesner - # Modifications by Charl Botha - # - # Permission is hereby granted, free of charge, to any person obtaining a - # copy of this software and associated documentation files (the "Software"), - # to deal in the Software without restriction, including without limitation - # the rights to use, copy, modify, merge, publish, distribute, sublicense, - # and/or sell copies of the Software, and to permit persons to whom the - # Software is furnished to do so, subject to the following conditions: - # - # The above copyright notice and this permission notice shall be included in - # all copies or substantial portions of the Software. - # - # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - # DEALINGS IN THE SOFTWARE. - - if PYSIDE6: - from PySide6.QtCore import QMetaObject - from PySide6.QtUiTools import QUiLoader - elif PYSIDE2: - from PySide2.QtCore import QMetaObject - from PySide2.QtUiTools import QUiLoader - try: - from pyside2uic import compileUi - # Patch UIParser as xml.etree.Elementree.Element.getiterator - # was deprecated since Python 3.2 and removed in Python 3.9 - # https://docs.python.org/3.9/whatsnew/3.9.html#removed - from pyside2uic.uiparser import UIParser - from xml.etree.ElementTree import Element - class ElemPatched(Element): - def getiterator(self, *args, **kwargs): - return self.iter(*args, **kwargs) - def readResources(self, elem): - return self._readResources(ElemPatched(elem)) - UIParser._readResources = UIParser.readResources - UIParser.readResources = readResources - except ImportError: - pass - - class UiLoader(QUiLoader): - """ - Subclass of :class:`~PySide.QtUiTools.QUiLoader` to create the user - interface in a base instance. - - Unlike :class:`~PySide.QtUiTools.QUiLoader` itself this class does not - create a new instance of the top-level widget, but creates the user - interface in an existing instance of the top-level class if needed. - - This mimics the behaviour of :func:`PyQt4.uic.loadUi`. - """ - - def __init__(self, baseinstance, customWidgets=None): - """ - Create a loader for the given ``baseinstance``. - - The user interface is created in ``baseinstance``, which must be an - instance of the top-level class in the user interface to load, or a - subclass thereof. - - ``customWidgets`` is a dictionary mapping from class name to class - object for custom widgets. Usually, this should be done by calling - registerCustomWidget on the QUiLoader, but with PySide 1.1.2 on - Ubuntu 12.04 x86_64 this causes a segfault. - - ``parent`` is the parent object of this loader. - """ - - QUiLoader.__init__(self, baseinstance) - - self.baseinstance = baseinstance - - if customWidgets is None: - self.customWidgets = {} - else: - self.customWidgets = customWidgets - - def createWidget(self, class_name, parent=None, name=''): - """ - Function that is called for each widget defined in ui file, - overridden here to populate baseinstance instead. - """ - - if parent is None and self.baseinstance: - # supposed to create the top-level widget, return the base - # instance instead - return self.baseinstance - - else: - - # For some reason, Line is not in the list of available - # widgets, but works fine, so we have to special case it here. - if class_name in self.availableWidgets() or class_name == 'Line': - # create a new widget for child widgets - widget = QUiLoader.createWidget(self, class_name, parent, name) - - else: - # If not in the list of availableWidgets, must be a custom - # widget. This will raise KeyError if the user has not - # supplied the relevant class_name in the dictionary or if - # customWidgets is empty. - try: - widget = self.customWidgets[class_name](parent) - except KeyError as error: - raise Exception( - f'No custom widget {class_name} ' - 'found in customWidgets' - ) from error - - if self.baseinstance: - # set an attribute for the new child widget on the base - # instance, just like PyQt4.uic.loadUi does. - setattr(self.baseinstance, name, widget) - - return widget - - def _get_custom_widgets(ui_file): - """ - This function is used to parse a ui file and look for the - section, then automatically load all the custom widget classes. - """ - - import sys - import importlib - from xml.etree.ElementTree import ElementTree - - # Parse the UI file - etree = ElementTree() - ui = etree.parse(ui_file) - - # Get the customwidgets section - custom_widgets = ui.find('customwidgets') - - if custom_widgets is None: - return {} - - custom_widget_classes = {} - - for custom_widget in list(custom_widgets): - - cw_class = custom_widget.find('class').text - cw_header = custom_widget.find('header').text - - module = importlib.import_module(cw_header) - - custom_widget_classes[cw_class] = getattr(module, cw_class) - - return custom_widget_classes - - def loadUi(uifile, baseinstance=None, workingDirectory=None): - """ - Dynamically load a user interface from the given ``uifile``. - - ``uifile`` is a string containing a file name of the UI file to load. - - If ``baseinstance`` is ``None``, the a new instance of the top-level - widget will be created. Otherwise, the user interface is created within - the given ``baseinstance``. In this case ``baseinstance`` must be an - instance of the top-level widget class in the UI file to load, or a - subclass thereof. In other words, if you've created a ``QMainWindow`` - interface in the designer, ``baseinstance`` must be a ``QMainWindow`` - or a subclass thereof, too. You cannot load a ``QMainWindow`` UI file - with a plain :class:`~PySide.QtGui.QWidget` as ``baseinstance``. - - :method:`~PySide.QtCore.QMetaObject.connectSlotsByName()` is called on - the created user interface, so you can implemented your slots according - to its conventions in your widget class. - - Return ``baseinstance``, if ``baseinstance`` is not ``None``. Otherwise - return the newly created instance of the user interface. - """ - - # We parse the UI file and import any required custom widgets - customWidgets = _get_custom_widgets(uifile) - - loader = UiLoader(baseinstance, customWidgets) - - if workingDirectory is not None: - loader.setWorkingDirectory(workingDirectory) - - widget = loader.load(uifile) - QMetaObject.connectSlotsByName(widget) - return widget - - def loadUiType(uifile, from_imports=False): - """Load a .ui file and return the generated form class and - the Qt base class. - - The "loadUiType" command convert the ui file to py code - in-memory first and then execute it in a special frame to - retrieve the form_class. - - Credit: https://stackoverflow.com/a/14195313/15954282 - """ - - import sys - from io import StringIO - from xml.etree.ElementTree import ElementTree - - from . import QtWidgets - - # Parse the UI file - etree = ElementTree() - ui = etree.parse(uifile) - - widget_class = ui.find('widget').get('class') - form_class = ui.find('class').text - - with open(uifile, encoding="utf-8") as fd: - code_stream = StringIO() - frame = {} - - compileUi(fd, code_stream, indent=0, from_imports=from_imports) - pyc = compile(code_stream.getvalue(), '', 'exec') - exec(pyc, frame) - - # Fetch the base_class and form class based on their type in the - # xml from designer - form_class = frame['Ui_%s' % form_class] - base_class = getattr(QtWidgets, widget_class) - - return form_class, base_class diff --git a/winpython/_vendor/vendor.txt b/winpython/_vendor/vendor.txt deleted file mode 100644 index d9f91cd4..00000000 --- a/winpython/_vendor/vendor.txt +++ /dev/null @@ -1 +0,0 @@ -qtpy==2.3.0 diff --git a/winpython/associate.py b/winpython/associate.py deleted file mode 100644 index 8868ea7a..00000000 --- a/winpython/associate.py +++ /dev/null @@ -1,430 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -Register a Python distribution - -Created on Tue Aug 21 21:46:30 2012 -""" - -import sys -import os -from pathlib import Path -import platform -import importlib - -# import subprocess - - -# Local imports -import winreg -from winpython import utils - -KEY_C = r"Software\Classes\%s" -KEY_C0 = KEY_C % r"Python.%sFile\shell" -KEY_C1 = KEY_C % r"Python.%sFile\shell\%s" -KEY_C2 = KEY_C1 + r"\command" -KEY_DROP0 = KEY_C % r"Python.%sFile\shellex" -KEY_DROP1 = KEY_C % r"Python.%sFile\shellex\DropHandler" -KEY_I = KEY_C % r"Python.%sFile\DefaultIcon" -KEY_D = KEY_C % r"Python.%sFile" -EWI = "Edit with IDLE" -EWS = "Edit with Spyder" - -KEY_S = r"Software\Python" -KEY_S0 = KEY_S + r"\WinPython" # was PythonCore before PEP-0514 -KEY_S1 = KEY_S0 + r"\%s" - -def _remove_start_menu_folder(target, current=True): - "remove menu Folder for target WinPython" - import importlib.util - win32com_exists = importlib.util.find_spec('win32com') is not None - - # we return nothing if no win32com package - if win32com_exists: - utils.remove_winpython_start_menu_folder(current=current) - -def _get_shortcut_data(target, current=True): - "get windows menu access, if win32com exists otherwise nothing" - import importlib.util - win32com_exists = importlib.util.find_spec('win32com') is not None - - # we return nothing if no win32com package - if not win32com_exists: - return [] - wpgroup = utils.create_winpython_start_menu_folder(current=current) - wpdir = str(Path(target).parent) - data = [] - for name in os.listdir(wpdir): - bname, ext = Path(name).stem, Path(name).suffix - if ext == ".exe": - data.append( - ( - str(Path(wpdir) / name), - bname, - str(Path(wpgroup) / bname), - ) - ) - return data - - -def register(target, current=True, verbose=True): - """Register a Python distribution in Windows registry""" - root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE - - # Creating Registry entries - if verbose: - print(f'Creating WinPython registry entries for {target}') - # Extensions - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".py"), - "", - 0, - winreg.REG_SZ, - "Python.File", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".pyw"), - "", - 0, - winreg.REG_SZ, - "Python.NoConFile", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".pyc"), - "", - 0, - winreg.REG_SZ, - "Python.CompiledFile", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".pyo"), - "", - 0, - winreg.REG_SZ, - "Python.CompiledFile", - ) - - # MIME types - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".py"), - "Content Type", - 0, - winreg.REG_SZ, - "text/plain", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C % ".pyw"), - "Content Type", - 0, - winreg.REG_SZ, - "text/plain", - ) - - # Verbs - python = str((Path(target) / "python.exe").resolve()) - pythonw = str((Path(target) / "pythonw.exe").resolve()) - spyder = str((Path(target).parent / "Spyder.exe").resolve()) - - if not Path(spyder).is_file(): - spyder = f'{pythonw}" "{target}\Scripts\spyder' - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("", "open")), - "", - 0, - winreg.REG_SZ, - '"%s" "%%1" %%*' % python, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("NoCon", "open")), - "", - 0, - winreg.REG_SZ, - '"%s" "%%1" %%*' % pythonw, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("Compiled", "open")), - "", - 0, - winreg.REG_SZ, - '"%s" "%%1" %%*' % python, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("", EWI)), - "", - 0, - winreg.REG_SZ, - '"%s" "%s\Lib\idlelib\idle.pyw" -n -e "%%1"' % (pythonw, target), - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("NoCon", EWI)), - "", - 0, - winreg.REG_SZ, - '"%s" "%s\Lib\idlelib\idle.pyw" -n -e "%%1"' % (pythonw, target), - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("", EWS)), - "", - 0, - winreg.REG_SZ, - '"%s" "%%1"' % spyder, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_C2 % ("NoCon", EWS)), - "", - 0, - winreg.REG_SZ, - '"%s" "%%1"' % spyder, - ) - - # Drop support - handler = "{60254CA5-953B-11CF-8C96-00AA00B8708C}" - for ftype in ("", "NoCon", "Compiled"): - winreg.SetValueEx( - winreg.CreateKey(root, KEY_DROP1 % ftype), - "", - 0, - winreg.REG_SZ, - handler, - ) - # Icons - dlls = str(Path(target) / "DLLs") - winreg.SetValueEx( - winreg.CreateKey(root, KEY_I % ""), - "", - 0, - winreg.REG_SZ, - r"%s\py.ico" % dlls, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_I % "NoCon"), - "", - 0, - winreg.REG_SZ, - r"%s\py.ico" % dlls, - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_I % "Compiled"), - "", - 0, - winreg.REG_SZ, - r"%s\pyc.ico" % dlls, - ) - - # Descriptions - winreg.SetValueEx( - winreg.CreateKey(root, KEY_D % ""), - "", - 0, - winreg.REG_SZ, - "Python File", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_D % "NoCon"), - "", - 0, - winreg.REG_SZ, - "Python File (no console)", - ) - winreg.SetValueEx( - winreg.CreateKey(root, KEY_D % "Compiled"), - "", - 0, - winreg.REG_SZ, - "Compiled Python File", - ) - - # PythonCore entries - python_infos = utils.get_python_infos(target) # ('3.11', 64) - short_version = python_infos[0] # 3.11 from ('3.11', 64) - long_version = utils.get_python_long_version(target) # 3.11.5 - key_core = (KEY_S1 % short_version) + r"\%s" # Winpython\3.11 - - # PEP-0514 additions, with standard Python practice - SupportUrl="https://winpython.github.io" - SysArchitecture = platform.architecture()[0] # '64bit' - SysVersion = '.'.join(platform.python_version_tuple()[:2]) # '3.11' - Version = platform.python_version() # '3.11.5' - - # But keep consistent with past possibilities until more alignement - SysArchitecture = f'{python_infos[1]}bit' # '64bit' - SysVersion = short_version - Version = long_version - - DisplayName = f'Python {Version} ({SysArchitecture})' - key_short = (KEY_S1 % short_version) # WinPython\3.11 - key_keys={'DisplayName':DisplayName, - 'SupportUrl':SupportUrl, - 'SysVersion':SysVersion, - 'SysArchitecture':SysArchitecture, - 'Version':Version} - - regkey = winreg.CreateKey(root, key_short) - # see https://www.programcreek.com/python/example/106949/winreg.CreateKey - # winreg.SetValueEx(key, '', reg.REG_SZ, '') - for k, v in key_keys.items(): - winreg.SetValueEx( - regkey, - k, - 0, - winreg.REG_SZ, - v, - ) - winreg.CloseKey(regkey) - - # pep-0514 additions at InstallPathLevel - ExecutablePath = python - WindowedExecutablePath = pythonw - - key_short = key_core % "InstallPath" # WinPython\3.11\InstallPath - key_keys={'ExecutablePath':ExecutablePath, - 'WindowedExecutablePath':WindowedExecutablePath} - - regkey = winreg.CreateKey(root, key_core % "InstallPath") - winreg.SetValueEx( - regkey, - "", - 0, - winreg.REG_SZ, - target + '\\', - ) - for k, v in key_keys.items(): - winreg.SetValueEx( - regkey, - k, - 0, - winreg.REG_SZ, - v, - ) - winreg.CloseKey(regkey) - - - - winreg.SetValueEx( - winreg.CreateKey(root, key_core % r"InstallPath\InstallGroup"), - "", - 0, - winreg.REG_SZ, - "Python %s" % short_version, - ) - winreg.SetValueEx( - winreg.CreateKey(root, key_core % "Modules"), - "", - 0, - winreg.REG_SZ, - "", - ) - winreg.SetValueEx( - winreg.CreateKey(root, key_core % "PythonPath"), - "", - 0, - winreg.REG_SZ, - r"%s\Lib;%s\DLLs" % (target, target), - ) - winreg.SetValueEx( - winreg.CreateKey( - root, - key_core % r"Help\Main Python Documentation", - ), - "", - 0, - winreg.REG_SZ, - r"%s\Doc\python%s.chm" % (target, long_version), - ) - - # Create start menu entries for all WinPython launchers - spec = importlib.util.find_spec('pythoncom') - if verbose and spec is None: - print(f"Can't create WinPython menu as pywin32 package is not installed") - if verbose and spec is not None: - print(f'Creating WinPython menu for all icons in {target}') - for path, desc, fname in _get_shortcut_data(target, current=current): - utils.create_shortcut(path, desc, fname, verbose=verbose) - - -def unregister(target, current=True, verbose=True): - """Unregister a Python distribution in Windows registry""" - # Removing Registry entries - if verbose: - print(f'Removing WinPython registry entries for {target}') - root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE - short_version = utils.get_python_infos(target)[0] - key_core = (KEY_S1 % short_version) + r"\%s" - for key in ( - # Drop support - KEY_DROP1 % "", - KEY_DROP1 % "NoCon", - KEY_DROP1 % "Compiled", - KEY_DROP0 % "", - KEY_DROP0 % "NoCon", - KEY_DROP0 % "Compiled", - # Icons - KEY_I % "NoCon", - KEY_I % "Compiled", - KEY_I % "", - # Edit with IDLE - KEY_C2 % ("", EWI), - KEY_C2 % ("NoCon", EWI), - KEY_C1 % ("", EWI), - KEY_C1 % ("NoCon", EWI), - # Edit with Spyder - KEY_C2 % ("", EWS), - KEY_C2 % ("NoCon", EWS), - KEY_C1 % ("", EWS), - KEY_C1 % ("NoCon", EWS), - # Verbs - KEY_C2 % ("", "open"), - KEY_C2 % ("NoCon", "open"), - KEY_C2 % ("Compiled", "open"), - KEY_C1 % ("", "open"), - KEY_C1 % ("NoCon", "open"), - KEY_C1 % ("Compiled", "open"), - KEY_C0 % "", - KEY_C0 % "NoCon", - KEY_C0 % "Compiled", - # Descriptions - KEY_D % "NoCon", - KEY_D % "Compiled", - KEY_D % "", - # PythonCore - key_core % r"InstallPath\InstallGroup", - key_core % "InstallPath", - key_core % "Modules", - key_core % "PythonPath", - key_core % r"Help\Main Python Documentation", - key_core % "Help", - KEY_S1 % short_version, - KEY_S0, - KEY_S, - ): - try: - if verbose: - print(key) - winreg.DeleteKey(root, key) - except WindowsError: - rootkey = "HKEY_CURRENT_USER" if current else "HKEY_LOCAL_MACHINE" - if verbose: - print( - r"Unable to remove %s\%s" % (rootkey, key), - file=sys.stderr, - ) - # remove menu shortcuts - spec = importlib.util.find_spec('pythoncom') - if verbose and spec is None: - print(f"Can't remove WinPython menu as pywin32 package is not installed") - if verbose and spec is not None: - print(f'Removing WinPython menu for all icons in {target}') - _remove_start_menu_folder(target, current=current) - - #for path, desc, fname in _get_shortcut_data(target, current=current): - # if Path(fname).exists(): - # os.remove(fname) - - -if __name__ == "__main__": - register(sys.prefix) - unregister(sys.prefix) \ No newline at end of file diff --git a/winpython/build_winpython.py b/winpython/build_winpython.py new file mode 100644 index 00000000..7fea0acd --- /dev/null +++ b/winpython/build_winpython.py @@ -0,0 +1,260 @@ +# build_winpython.py +import os, sys, argparse, datetime, subprocess, shutil +import logging + +from pathlib import Path +from filecmp import cmp + +def setup_logging(log_file: Path, LOG_FORMAT="%(asctime)s %(levelname)s: %(message)s"): + """Initialize logging to both file and stdout.""" + logging.basicConfig( + level=logging.INFO, + format=LOG_FORMAT, + handlers=[ + logging.StreamHandler(sys.stdout), + logging.FileHandler(str(log_file), encoding="utf-8", mode='a') + ] + ) + +def log_section(message: str, highlight_bar="-"*40): + logging.info("\n" + highlight_bar) + logging.info(message) + logging.info(highlight_bar) + +def delete_folder_if_exists(folder: Path, check_flavor: str = ""): + check_last = folder.parent.name if not folder.is_dir() else folder.name + expected_name = "bu" + check_flavor + if folder.exists() and folder.is_dir() and check_last == expected_name: + logging.info(f"Removing old backup: {folder}") + folder_old = folder.with_suffix('.old') + if folder_old.exists(): + shutil.rmtree(folder_old) + folder.rename(folder_old) + shutil.rmtree(folder_old) + +def run_command(cmd, shell=False, check=True): + logging.info(f"[RUNNING] {' '.join(cmd) if isinstance(cmd, list) else cmd}") + with subprocess.Popen( + cmd, shell=shell, stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, universal_newlines=True + ) as proc: + for line in proc.stdout: + logging.info(line.rstrip()) + if check and proc.wait() != 0: + raise subprocess.CalledProcessError(proc.returncode, cmd) + +def pip_install(python_exe: Path, req_file: str, constraints: str, find_links: str, label: str): + if req_file and Path(req_file).exists(): + cmd = [ + str(python_exe), "-m", "pip", "install", + "-r", req_file, "-c", constraints, + "--pre", "--no-index", f"--find-links={find_links}", + "--upgrade" + ] + log_section(f"Pip-install {label}") + run_command(cmd) + else: + log_section(f"No {label} specified/skipped") + +def patch_winpython(python_exe): + cmd = [ + str(python_exe), "-c", + "from wppm import wppm; wppm.Distribution().patch_standard_packages('', to_movable=True)" + ] + run_command(cmd) + +def check_env_bat(winpydirbase: Path): + envbat = winpydirbase / "scripts" / "env.bat" + if not envbat.exists(): + raise FileNotFoundError(f"Missing env.bat at {envbat}") + +def generate_lockfiles(target_python: Path, winpydirbase: Path, constraints: str, find_links: str, file_postfix: str): + pip_req = winpydirbase.parent / "requirement_temp.txt" + with subprocess.Popen([str(target_python), "-m", "pip", "freeze"], stdout=subprocess.PIPE) as proc: + packages = [l for l in proc.stdout if b"winpython" not in l] + pip_req.write_bytes(b"".join(packages)) + # Lock to web and local (scaffolding) + for kind in ("", "local"): + out = winpydirbase.parent / f"pylock.{file_postfix}{kind}.toml" + outreq = winpydirbase.parent / f"requir.{file_postfix}{kind}.txt" + cmd = [str(target_python), "-m", "pip", "lock", "--no-deps", "-c", constraints] + if kind == "local": + cmd += ["--find-links", find_links] + cmd += ["-r", str(pip_req), "-o", str(out)] + run_command(cmd) + # Convert both locks to requirement.txt with hash256 + cmd = [str(target_python), "-X", "utf8", "-c", f"from wppm import wheelhouse as wh; wh.pylock_to_req(r'{out}', r'{outreq}')"] + run_command(cmd) + # check equality + web, local = "", "local" + if not cmp(winpydirbase.parent / f"requir.{file_postfix}{web}.txt", winpydirbase.parent / f"requir.{file_postfix}{local}.txt"): + print("⚠️⚠️⚠️⚠️⚠️⚠️ ALARM ⚠️⚠️⚠️⚠️⚠️⚠️differences in ", winpydirbase.parent / f"requir.{file_postfix}{web}.txt", winpydirbase.parent / f"requir.{file_postfix}{local}.txt") + raise os.error + else: + print ("💖💖💖 match 💖💖💖 ok ",winpydirbase.parent / f"requir.{file_postfix}{web}.txt", winpydirbase.parent / f"requir.{file_postfix}{local}.txt") + +# --- Main Logic --- +def run_make_py(build_python, winpydirbase, args, winpyver, winpyver2): + from . import make + make.make_all( + args.release, args.release_level, basedir_wpy=winpydirbase, + verbose=True, flavor=args.flavor, + source_dirs=args.source_dirs, toolsdirs=args.tools_dirs, + winpyver=winpyver, winpyver2=winpyver2 + ) + +def process_wheelhouse_requirements(target_python: Path, winpydirbase: Path,args: argparse.Namespace,file_postfix: str): + """ + Handle installation and conversion of wheelhouse requirements. + """ + wheelhousereq = Path(args.wheelhousereq) + kind = "local" + out = winpydirbase.parent / f"pylock.{file_postfix}_wheels{kind}.toml" + outreq = winpydirbase.parent / f"requir.{file_postfix}_wheels{kind}.txt" + if wheelhousereq.is_file(): + # Generate pylock from wheelhousereq + cmd = [ + str(target_python), "-m", "pip", "lock", "--no-index", "--trusted-host=None", "--pre", + "--find-links", args.find_links, "-c", args.constraints, "-r", str(wheelhousereq), + "-o", str(out) + ] + run_command(cmd) + # Convert pylock to requirements with hash + pylock_to_req_cmd = [ + str(target_python), "-X", "utf8", "-c", + f"from wppm import wheelhouse as wh; wh.pylock_to_req(r'{out}', r'{outreq}')" + ] + run_command(pylock_to_req_cmd, check=False) + + kind = "" + outw = winpydirbase.parent / f"pylock.{file_postfix}_wheels{kind}.toml" + outreqw = winpydirbase.parent / f"requir.{file_postfix}_wheels{kind}.txt" + # Generate web pylock from local frozen hashes + web_lock_cmd = [ + str(target_python), "-m", "pip", "lock", "--no-deps", "--require-hashes", + "-r", str(outreq), "-o", str(outw) + ] + run_command(web_lock_cmd) + pylock_to_req_cmd2 = [ + str(target_python), "-X", "utf8", "-c", + f"from wppm import wheelhouse as wh; wh.pylock_to_req(r'{outw}', r'{outreqw}')" + ] + run_command(pylock_to_req_cmd2, check=False) + + # Use wppm to download local from req made with web hashes + wheelhouse = winpydirbase / "wheelhouse" / "included.wheels" + wppm_cmd = [ + str(target_python), "-X", "utf8", "-m", "wppm", str(out), "-ws", args.find_links, + "-wd", str(wheelhouse) + ] + run_command(wppm_cmd, check=False) + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('--python-target', required=True, help='Target Python version, e.g. 311') + parser.add_argument('--release', default='', help='Release') + parser.add_argument('--flavor', default='', help='Build flavor') + parser.add_argument('--arch', default='64', help='Architecture') + parser.add_argument('--release-level', default='', help='Release level (e.g., b1, b2)') + parser.add_argument('--winpydirbase', required=True, help='Path to put environment') + parser.add_argument('--source_dirs', required=True, help='Path to directory with python zip') + parser.add_argument('--tools_dirs', required=True, help='Path to directory with python zip') + parser.add_argument('--buildenv', required=True, help='Path to build environment') + parser.add_argument('--constraints', default='constraints.txt', help='Constraints file') + parser.add_argument('--requirements', help='Main requirements.txt file') + parser.add_argument('--find-links', default='wheelhouse', help='Path to local wheelhouse') + parser.add_argument('--log-dir', default='WinPython_build_logs', help='Directory for logs') + parser.add_argument('--mandatory-req', help='Mandatory requirements file') + parser.add_argument('--pre-req', help='Pre requirements file') + parser.add_argument('--wheelhousereq', help='Wheelhouse requirements file') + parser.add_argument('--create-installer', default='', help='default installer to create') + args = parser.parse_args() + + # compute paths (same as Step2)... + build_python = Path(args.buildenv) / "python.exe" + winpydirbase = Path(args.winpydirbase) + target_python = winpydirbase / "python" / "python.exe" + + # Setup paths and logs + now = datetime.datetime.now() + log_dir = Path(args.log_dir) + log_dir.mkdir(exist_ok=True) + time_str = now.strftime("%Y-%m-%d_at_%H%M") + log_file = log_dir / f"build_{args.python_target}_{args.flavor}_{args.release_level}_{time_str}.txt" + setup_logging(log_file) + + # Logs termination and version naming + if len(args.release_level) > 0: + z = Path(winpydirbase).name[(4+len(args.arch)):-len(args.release_level)-len(args.release)] + else: + z = Path(winpydirbase).name[(4+len(args.arch)):-len(args.release)] + tada = f"{z[:1]}_{z[1:3]}_{z[3:]}_{args.release}" + winpyver2 = tada.replace('_', '.') + winpyver = f"{winpyver2}{args.flavor}{args.release_level}" + file_postfix = f"{args.arch}-{tada}{args.flavor}{args.release_level}" + + log_section(f"Preparing build for Python {args.python_target} ({args.arch}-bit)") + + log_section(f"🙏 Step 1: displace old {Path(winpydirbase)}") + delete_folder_if_exists(winpydirbase.parent, check_flavor=args.flavor) #bu{flavor]} + + log_section(f"🙏 Step 2: make.py Python with {str(build_python)} at ({winpydirbase}") + run_make_py(str(build_python), winpydirbase, args, winpyver, winpyver2) + + check_env_bat(winpydirbase) + + log_section("🙏 Step 3: install requirements") + + for label, req in [ + ("Mandatory", args.mandatory_req), + ("Pre", args.pre_req), + ("Main", args.requirements), + ]: + pip_install(target_python, req, args.constraints, args.find_links, label) + + log_section("🙏 Step 4: Patch Winpython") + patch_winpython(target_python) + + log_section(f"🙏 Step 5: install wheelhouse requirements {args.wheelhousereq}") + if args.wheelhousereq: + process_wheelhouse_requirements(target_python, winpydirbase, args, file_postfix) + + log_section("🙏 Step 6: install lockfiles") + print(target_python, winpydirbase, args.constraints, args.find_links, file_postfix) + generate_lockfiles(target_python, winpydirbase, args.constraints, args.find_links, file_postfix) + + + log_section(f"🙏 Step 7: generate changelog") + mdn = f"WinPython{args.flavor}-{args.arch}bit-{winpyver2}.md" + out = f"WinPython{args.flavor}-{args.arch}bit-{winpyver2}_History.md" + changelog_dir = log_dir.parent/ "changelogs" + + cmd = ["set", f"WINPYVER2={winpyver2}&", "set", f"WINPYFLAVOR={args.flavor}&", + "set", f"WINPYVER={winpyver2}{args.flavor}{args.release_level}&", + str(target_python), "-X", "utf8", "-c" , + ( + "from wppm import wppm;" + "result = wppm.Distribution().generate_package_index_markdown();" + f"open(r'{winpydirbase.parent / mdn}', 'w', encoding='utf-8').write(result)" + )] + run_command(cmd, shell=True) + shutil.copyfile (winpydirbase.parent / mdn, changelog_dir / mdn) + + cmd = [str(target_python), "-X", "utf8", "-c", + ( + "from wppm import diff;" + f"result = diff.compare_package_indexes('{winpyver2}', searchdir=r'{changelog_dir}', flavor=r'{args.flavor}', architecture={args.arch});" + f"open(r'{winpydirbase.parent / out}', 'w', encoding='utf-8').write(result)" + )] + run_command(cmd, check=False) + shutil.copyfile (winpydirbase.parent / out, changelog_dir / out) + + if args.create_installer != "": + log_section("🙏 Step 8: Create Installer") + stem = f"WinPython{args.arch}-{winpyver2}{args.flavor}{args.release_level}" + cmd = [str(target_python), "-c", + f"from wppm import utils; utils.command_installer_7zip(r'{winpydirbase}', r'{winpydirbase.parent}', r'{stem}', r'{args.create_installer}')" ] + run_command(cmd, check=False) + +if __name__ == '__main__': + main() diff --git a/winpython/config.py b/winpython/config.py deleted file mode 100644 index b33db1f1..00000000 --- a/winpython/config.py +++ /dev/null @@ -1,48 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython utilities configuration - -Created on Wed Aug 29 12:23:19 2012 -""" - -import sys -from pathlib import Path - -def get_module_path(modname): - """Return module *modname* base path""" - return str(Path(sys.modules[modname].__file__).parent.resolve()) - - -def get_module_data_path( - modname, relpath=None, attr_name='DATAPATH' -): - """Return module *modname* data path - Note: relpath is ignored if module has an attribute named *attr_name* - - Handles py2exe/cx_Freeze distributions""" - datapath = getattr(sys.modules[modname], attr_name, '') - if datapath: - return datapath - else: - datapath = get_module_path(modname) - parentdir = str(Path(datapath).parent) - if Path(parentdir).is_file(): - # Parent directory is not a directory but the 'library.zip' file: - # this is either a py2exe or a cx_Freeze distribution - datapath = str((Path(parentdir).parent / modname).resolve()) - if relpath is not None: - datapath = str((Path(datapath) / relpath).resolve()) - return datapath - - -DATA_PATH = get_module_data_path( - 'winpython', relpath='data' -) -IMAGE_PATH = get_module_data_path( - 'winpython', relpath='images' -) diff --git a/winpython/controlpanel.py b/winpython/controlpanel.py deleted file mode 100644 index 701a0159..00000000 --- a/winpython/controlpanel.py +++ /dev/null @@ -1,987 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython Package Manager GUI - -Created on Mon Aug 13 11:40:01 2012 -""" - -from pathlib import Path -import os -import sys -import platform -import locale - -# winpython.qt becomes winpython._vendor.qtpy -from winpython._vendor.qtpy.QtWidgets import ( - QApplication, - QMainWindow, - QWidget, - QLineEdit, - QHBoxLayout, - QVBoxLayout, - QMessageBox, - QAbstractItemView, - QProgressDialog, - QTableView, - QPushButton, - QLabel, - QTabWidget, - QToolTip, -) - -from winpython._vendor.qtpy.QtGui import ( - QColor, - QDesktopServices, -) - -from winpython._vendor.qtpy.QtCore import ( - Qt, - QAbstractTableModel, - QModelIndex, - Signal, - QThread, - QTimer, - QUrl, -) -from winpython._vendor.qtpy.compat import ( - to_qvariant, - getopenfilenames, - getexistingdirectory, -) -import winpython._vendor.qtpy - -from winpython.qthelpers import ( - get_icon, - add_actions, - create_action, - keybinding, - get_std_icon, - action2button, - mimedata2url, -) - -# Local imports -from winpython import __version__, __project_url__ -from winpython import wppm, associate, utils - -COLUMNS = ACTION, CHECK, NAME, VERSION, DESCRIPTION = list( - range(5) -) - - -class PackagesModel(QAbstractTableModel): - # Signals after PyQt4 old SIGNAL removal - dataChanged = Signal(QModelIndex, QModelIndex) - - def __init__(self): - QAbstractTableModel.__init__(self) - self.packages = [] - self.checked = set() - self.actions = {} - - def sortByName(self): - self.packages = sorted( - self.packages, key=lambda x: x.name - ) - self.reset() - - def flags(self, index): - if not index.isValid(): - return Qt.ItemIsEnabled - column = index.column() - if column in (NAME, VERSION, ACTION, DESCRIPTION): - return Qt.ItemFlags( - QAbstractTableModel.flags(self, index) - ) - else: - return Qt.ItemFlags( - QAbstractTableModel.flags(self, index) - | Qt.ItemIsUserCheckable - | Qt.ItemIsEditable - ) - - def data(self, index, role=Qt.DisplayRole): - if not index.isValid() or not ( - 0 <= index.row() < len(self.packages) - ): - return to_qvariant() - package = self.packages[index.row()] - column = index.column() - if role == Qt.CheckStateRole and column == CHECK: - return int(package in self.checked) - elif role == Qt.DisplayRole: - if column == NAME: - return to_qvariant(package.name) - elif column == VERSION: - return to_qvariant(package.version) - elif column == ACTION: - action = self.actions.get(package) - if action is not None: - return to_qvariant(action) - elif column == DESCRIPTION: - return to_qvariant(package.description) - elif role == Qt.TextAlignmentRole: - if column == ACTION: - return to_qvariant( - int(Qt.AlignRight | Qt.AlignVCenter) - ) - else: - return to_qvariant( - int(Qt.AlignLeft | Qt.AlignVCenter) - ) - elif role == Qt.BackgroundColorRole: - if package in self.checked: - color = QColor(Qt.darkGreen) - color.setAlphaF(0.1) - return to_qvariant(color) - else: - color = QColor(Qt.lightGray) - color.setAlphaF(0.3) - return to_qvariant(color) - return to_qvariant() - - def headerData( - self, section, orientation, role=Qt.DisplayRole - ): - if role == Qt.TextAlignmentRole: - if orientation == Qt.Horizontal: - return to_qvariant( - int(Qt.AlignHCenter | Qt.AlignVCenter) - ) - return to_qvariant( - int(Qt.AlignRight | Qt.AlignVCenter) - ) - if role != Qt.DisplayRole: - return to_qvariant() - if orientation == Qt.Horizontal: - if section == NAME: - return to_qvariant("Name") - elif section == VERSION: - return to_qvariant("Version") - elif section == ACTION: - return to_qvariant("Action") - elif section == DESCRIPTION: - return to_qvariant("Description") - return to_qvariant() - - def rowCount(self, index=QModelIndex()): - return len(self.packages) - - def columnCount(self, index=QModelIndex()): - return len(COLUMNS) - - def setData(self, index, value, role=Qt.EditRole): - if ( - index.isValid() - and 0 <= index.row() < len(self.packages) - and role == Qt.CheckStateRole - ): - package = self.packages[index.row()] - if package in self.checked: - self.checked.remove(package) - else: - self.checked.add(package) - # PyQt4 old SIGNAL: self.emit(SIGNAL("dataChanged(QModelIndex,QModelIndex)"), - # PyQt4 old SIGNAL: index, index) - self.dataChanged.emit(index, index) - return True - return False - - -INSTALL_ACTION = 'Install' -REPAIR_ACTION = 'Repair (reinstall)' -NO_REPAIR_ACTION = 'None (Already installed)' -UPGRADE_ACTION = 'Upgrade from v' -NONE_ACTION = '-' - - -class PackagesTable(QTableView): - # Signals after PyQt4 old SIGNAL removal, to be emitted after package_added event - package_added = Signal() - - def __init__(self, parent, process, winname): - QTableView.__init__(self, parent) - assert process in ('install', 'uninstall') - self.process = process - self.model = PackagesModel() - self.setModel(self.model) - self.winname = winname - self.repair = False - self.resizeColumnToContents(0) - self.setAcceptDrops(process == 'install') - if process == 'uninstall': - self.hideColumn(0) - self.distribution = None - - self.setSelectionBehavior( - QAbstractItemView.SelectRows - ) - self.verticalHeader().hide() - self.setShowGrid(False) - - def reset_model(self): - # self.model.reset() is deprecated in Qt5 - self.model.beginResetModel() - self.model.endResetModel() - self.horizontalHeader().setStretchLastSection(True) - for colnb in (ACTION, CHECK, NAME, VERSION): - self.resizeColumnToContents(colnb) - - def get_selected_packages(self): - """Return selected packages""" - return [ - pack - for pack in self.model.packages - if pack in self.model.checked - ] - - def add_packages(self, fnames): - """Add packages""" - notsupported = [] - notcompatible = [] - dist = self.distribution - for fname in fnames: - bname = Path(fname).name - try: - package = wppm.Package(fname) - if package.is_compatible_with(dist): - self.add_package(package) - else: - notcompatible.append(bname) - except NotImplementedError: - notsupported.append(bname) - # PyQt4 old SIGNAL: self.emit(SIGNAL('package_added()')) - self.package_added.emit() - if notsupported: - QMessageBox.warning( - self, - "Warning", - "The following packages filenaming are not " - "recognized by %s:\n\n%s" - % (self.winname, "
".join(notsupported)), - QMessageBox.Ok, - ) - if notcompatible: - QMessageBox.warning( - self, - "Warning", - "The following packages " - "are not compatible with " - "Python %s %dbit:\n\n%s" - % ( - dist.version, - dist.architecture, - "
".join(notcompatible), - ), - QMessageBox.Ok, - ) - - def add_package(self, package): - for pack in self.model.packages: - if pack.name == package.name: - return - self.model.packages.append(package) - self.model.packages.sort(key=lambda x: x.name) - self.model.checked.add(package) - self.reset_model() - - def remove_package(self, package): - self.model.packages = [ - pack - for pack in self.model.packages - if pack.fname != package.fname - ] - if package in self.model.checked: - self.model.checked.remove(package) - if package in self.model.actions: - self.model.actions.pop(package) - self.reset_model() - - def refresh_distribution(self, dist): - self.distribution = dist - if self.process == 'install': - for package in self.model.packages: - pack = dist.find_package(package.name) - if pack is None: - action = INSTALL_ACTION - elif pack.version == package.version: - if self.repair: - action = REPAIR_ACTION - else: - action = NO_REPAIR_ACTION - else: - action = UPGRADE_ACTION + pack.version - self.model.actions[package] = action - else: - self.model.packages = ( - self.distribution.get_installed_packages() - ) - for package in self.model.packages: - self.model.actions[package] = NONE_ACTION - self.reset_model() - - def select_all(self): - allpk = set(self.model.packages) - if self.model.checked == allpk: - self.model.checked = set() - else: - self.model.checked = allpk - self.model.reset() - - def dragMoveEvent(self, event): - """Reimplement Qt method, just to avoid default drag'n drop - implementation of QTableView to handle events""" - event.acceptProposedAction() - - def dragEnterEvent(self, event): - """Reimplement Qt method - Inform Qt about the types of data that the widget accepts""" - source = event.mimeData() - if source.hasUrls() and mimedata2url(source): - event.acceptProposedAction() - - def dropEvent(self, event): - """Reimplement Qt method - Unpack dropped data and handle it""" - source = event.mimeData() - fnames = [ - path - for path in mimedata2url(source) - if Path(path).is_file() - ] - self.add_packages(fnames) - event.acceptProposedAction() - - -class DistributionSelector(QWidget): - """Python distribution selector widget""" - - TITLE = 'Select a Python distribution path' - - # Signals after PyQt4 old SIGNAL removal - selected_distribution = Signal(str) - - def __init__(self, parent): - super(DistributionSelector, self).__init__(parent) - self.browse_btn = None - self.label = None - self.line_edit = None - self.setup_widget() - - def set_distribution(self, path): - """Set distribution directory""" - self.line_edit.setText(path) - - def setup_widget(self): - """Setup workspace selector widget""" - self.label = QLabel() - self.line_edit = QLineEdit() - self.line_edit.setAlignment(Qt.AlignRight) - self.line_edit.setReadOnly(True) - # self.line_edit.setDisabled(True) - self.browse_btn = QPushButton( - get_std_icon('DirOpenIcon'), "", self - ) - self.browse_btn.setToolTip(self.TITLE) - # PyQt4 old SIGNAL:self.connect(self.browse_btn, SIGNAL("clicked()"), - # PyQt4 old SIGNAL: self.select_directory) - self.browse_btn.clicked.connect( - self.select_directory - ) - layout = QHBoxLayout() - layout.addWidget(self.label) - layout.addWidget(self.line_edit) - layout.addWidget(self.browse_btn) - layout.setContentsMargins(0, 0, 0, 0) - self.setLayout(layout) - - def select_directory(self): - """Select directory""" - # basedir = to_text_string(self.line_edit.text()) - basedir = str(self.line_edit.text()) - if not Path(basedir).is_dir(): - basedir = str(Path.cwd()) # getcwd() - while True: - directory = getexistingdirectory( - self, self.TITLE, basedir - ) - if not directory: - break - if not utils.is_python_distribution(directory): - QMessageBox.warning( - self, - self.TITLE, - "The following directory is not a Python distribution.", - QMessageBox.Ok, - ) - basedir = directory - continue - directory = str(Path(directory).resolve(strict=False)) - self.set_distribution(directory) - # PyQt4 old SIGNAL: self.emit(SIGNAL('selected_distribution(QString)'), directory) - self.selected_distribution.emit(directory) - break - - -class Thread(QThread): - """Installation/Uninstallation thread""" - - def __init__(self, parent): - QThread.__init__(self, parent) - self.callback = None - self.error = None - - def run(self): - try: - self.callback() - except Exception as error: - error_str = str(error) - fs_encoding = ( - sys.getfilesystemencoding() - or locale.getpreferredencoding() - ) - try: - error_str = error_str.decode(fs_encoding) - except ( - UnicodeError, - TypeError, - AttributeError, - ): - pass - self.error = error_str - - -def python_distribution_infos(): - """Return Python distribution infos (not selected distribution but - the one used to run this script)""" - winpyver = os.environ.get('WINPYVER') - if winpyver is None: - return 'Unknown Python distribution' - else: - return 'WinPython ' + winpyver - - -class PMWindow(QMainWindow): - NAME = 'WinPython Control Panel' - - def __init__(self): - QMainWindow.__init__(self) - self.setAttribute(Qt.WA_DeleteOnClose) - - self.distribution = None - - self.tabwidget = None - self.selector = None - self.table = None - self.untable = None - - self.basedir = None - - self.select_all_action = None - self.install_action = None - self.uninstall_action = None - self.remove_action = None - self.packages_icon = get_std_icon( - 'FileDialogContentsView' - ) - - self.setup_window() - - def _add_table(self, table, title, icon): - """Add table tab to main tab widget, return button layout""" - widget = QWidget() - tabvlayout = QVBoxLayout() - widget.setLayout(tabvlayout) - tabvlayout.addWidget(table) - btn_layout = QHBoxLayout() - tabvlayout.addLayout(btn_layout) - self.tabwidget.addTab(widget, icon, title) - return btn_layout - - def setup_window(self): - """Setup main window""" - self.setWindowTitle(self.NAME) - self.setWindowIcon(get_icon('winpython.svg')) - - self.selector = DistributionSelector(self) - # PyQt4 old SIGNAL: self.connect(self.selector, SIGNAL('selected_distribution(QString)'), - # PyQt4 old SIGNAL: self.distribution_changed) - self.selector.selected_distribution.connect( - self.distribution_changed - ) - - self.table = PackagesTable( - self, 'install', self.NAME - ) - # PyQt4 old SIGNAL:self.connect(self.table, SIGNAL('package_added()'), - # PyQt4 old SIGNAL: self.refresh_install_button) - self.table.package_added.connect( - self.refresh_install_button - ) - - # PyQt4 old SIGNAL: self.connect(self.table, SIGNAL("clicked(QModelIndex)"), - # PyQt4 old SIGNAL: lambda index: self.refresh_install_button()) - self.table.clicked.connect( - lambda index: self.refresh_install_button() - ) - - self.untable = PackagesTable( - self, 'uninstall', self.NAME - ) - # PyQt4 old SIGNAL:self.connect(self.untable, SIGNAL("clicked(QModelIndex)"), - # PyQt4 old SIGNAL: lambda index: self.refresh_uninstall_button()) - self.untable.clicked.connect( - lambda index: self.refresh_uninstall_button() - ) - - self.selector.set_distribution(sys.prefix) - self.distribution_changed(sys.prefix) - - self.tabwidget = QTabWidget() - # PyQt4 old SIGNAL:self.connect(self.tabwidget, SIGNAL('currentChanged(int)'), - # PyQt4 old SIGNAL: self.current_tab_changed) - self.tabwidget.currentChanged.connect( - self.current_tab_changed - ) - - btn_layout = self._add_table( - self.table, - "Install/upgrade packages", - get_std_icon("ArrowDown"), - ) - unbtn_layout = self._add_table( - self.untable, - "Uninstall packages", - get_std_icon("DialogResetButton"), - ) - - central_widget = QWidget() - vlayout = QVBoxLayout() - vlayout.addWidget(self.selector) - vlayout.addWidget(self.tabwidget) - central_widget.setLayout(vlayout) - self.setCentralWidget(central_widget) - - # Install tab - add_action = create_action( - self, - "&Add packages...", - icon=get_std_icon('DialogOpenButton'), - triggered=self.add_packages, - ) - self.remove_action = create_action( - self, - "Remove", - shortcut=keybinding('Delete'), - icon=get_std_icon('TrashIcon'), - triggered=self.remove_packages, - ) - self.remove_action.setEnabled(False) - self.select_all_action = create_action( - self, - "(Un)Select all", - shortcut=keybinding('SelectAll'), - icon=get_std_icon('DialogYesButton'), - triggered=self.table.select_all, - ) - self.install_action = create_action( - self, - "&Install packages", - icon=get_std_icon('DialogApplyButton'), - triggered=lambda: self.process_packages( - 'install' - ), - ) - self.install_action.setEnabled(False) - quit_action = create_action( - self, - "&Quit", - icon=get_std_icon('DialogCloseButton'), - triggered=self.close, - ) - packages_menu = self.menuBar().addMenu("&Packages") - add_actions( - packages_menu, - [ - add_action, - self.remove_action, - self.install_action, - None, - quit_action, - ], - ) - - # Uninstall tab - self.uninstall_action = create_action( - self, - "&Uninstall packages", - icon=get_std_icon('DialogCancelButton'), - triggered=lambda: self.process_packages( - 'uninstall' - ), - ) - self.uninstall_action.setEnabled(False) - - uninstall_btn = action2button( - self.uninstall_action, - autoraise=False, - text_beside_icon=True, - ) - - # Option menu - option_menu = self.menuBar().addMenu("&Options") - repair_action = create_action( - self, - "Repair packages", - tip="Reinstall packages even if version is unchanged", - toggled=self.toggle_repair, - ) - add_actions(option_menu, (repair_action,)) - - # Advanced menu - option_menu = self.menuBar().addMenu("&Advanced") - register_action = create_action( - self, - "Register distribution...", - tip="Register file extensions, icons and context menu", - triggered=self.register_distribution, - ) - unregister_action = create_action( - self, - "Unregister distribution...", - tip="Unregister file extensions, icons and context menu", - triggered=self.unregister_distribution, - ) - open_console_action = create_action( - self, - "Open console here", - triggered=lambda: os.startfile( - self.command_prompt_path - ), - ) - open_console_action.setEnabled( - Path(self.command_prompt_path).exists() - ) - add_actions( - option_menu, - ( - register_action, - unregister_action, - None, - open_console_action, - ), - ) - - # # View menu - # view_menu = self.menuBar().addMenu("&View") - # popmenu = self.createPopupMenu() - # add_actions(view_menu, popmenu.actions()) - - # Help menu - about_action = create_action( - self, - f"About {self.NAME}...", - icon=get_std_icon('MessageBoxInformation'), - triggered=self.about, - ) - report_action = create_action( - self, - "Report issue...", - icon=get_icon('bug.png'), - triggered=self.report_issue, - ) - help_menu = self.menuBar().addMenu("?") - add_actions( - help_menu, [about_action, None, report_action] - ) - - # Status bar - status = self.statusBar() - status.setObjectName("StatusBar") - status.showMessage( - f"Welcome to {self.NAME}!", 5000 - ) - - # Button layouts - for act in ( - add_action, - self.remove_action, - None, - self.select_all_action, - self.install_action, - ): - if act is None: - btn_layout.addStretch() - else: - btn_layout.addWidget( - action2button( - act, - autoraise=False, - text_beside_icon=True, - ) - ) - unbtn_layout.addWidget(uninstall_btn) - unbtn_layout.addStretch() - - self.resize(400, 500) - - def current_tab_changed(self, index): - """Current tab has just changed""" - if index == 0: - self.show_drop_tip() - - def refresh_install_button(self): - """Refresh install button enable state""" - self.table.refresh_distribution(self.distribution) - self.install_action.setEnabled( - len(self.get_packages_to_be_installed()) > 0 - ) - nbp = len(self.table.get_selected_packages()) - for act in ( - self.remove_action, - self.select_all_action, - ): - act.setEnabled(nbp > 0) - self.show_drop_tip() - - def show_drop_tip(self): - """Show drop tip on install table""" - callback = lambda: QToolTip.showText( - self.table.mapToGlobal(self.table.pos()), - 'Drop files here
' - 'Executable installers (distutils) or source packages', - self, - ) - QTimer.singleShot(500, callback) - - def refresh_uninstall_button(self): - """Refresh uninstall button enable state""" - nbp = len(self.untable.get_selected_packages()) - self.uninstall_action.setEnabled(nbp > 0) - - def toggle_repair(self, state): - """Toggle repair mode""" - self.table.repair = state - self.refresh_install_button() - - def register_distribution(self): - """Register distribution""" - answer = QMessageBox.warning( - self, - "Register distribution", - "(experimental)\n" - "This will associate file extensions, icons and " - "Windows explorer's context menu entries ('Edit with IDLE', ...) " - "with selected Python distribution in Windows registry. " - "\n\nShortcuts for all WinPython launchers will be installed " - "in WinPython Start menu group (replacing existing " - "shortcuts)." - "\n\nNote: these actions are similar to those performed" - "when installing old Pythons with the official installer before 'py' " - "for Windows.\n\nDo you want to continue? ", - QMessageBox.Yes | QMessageBox.No, - ) - if answer == QMessageBox.Yes: - associate.register(self.distribution.target) - - def unregister_distribution(self): - """Unregister distribution""" - answer = QMessageBox.warning( - self, - "Unregister distribution", - "(experimental)\n" - "This will remove file extensions associations, icons and " - "Windows explorer's context menu entries ('Edit with IDLE', ...) " - "with selected Python distribution in Windows registry. " - "\n\nShortcuts for all WinPython launchers will be removed " - "from WinPython Start menu group." - "\n\nDo you want to continue? ", - QMessageBox.Yes | QMessageBox.No, - ) - if answer == QMessageBox.Yes: - associate.unregister(self.distribution.target) - - @property - def command_prompt_path(self): - return str(Path(self.distribution.target).parent / - "WinPython Command Prompt.exe") - - def distribution_changed(self, path): - """Distribution path has just changed""" - for package in self.table.model.packages: - self.table.remove_package(package) - # dist = wppm.Distribution(to_text_string(path)) - dist = wppm.Distribution(str(path)) - self.table.refresh_distribution(dist) - self.untable.refresh_distribution(dist) - self.distribution = dist - self.selector.label.setText( - f'Python {dist.version} {dist.architecture}bit:' - ) - - def add_packages(self): - """Add packages""" - basedir = ( - self.basedir if self.basedir is not None else '' - ) - fnames, _selfilter = getopenfilenames( - parent=self, - basedir=basedir, - caption='Add packages', - filters='*.exe *.zip *.tar.gz *.whl', - ) - if fnames: - self.basedir = str(Path(fnames[0]).parent) - self.table.add_packages(fnames) - - def get_packages_to_be_installed(self): - """Return packages to be installed""" - return [ - pack - for pack in self.table.get_selected_packages() - if self.table.model.actions[pack] - not in (NO_REPAIR_ACTION, NONE_ACTION) - ] - - def remove_packages(self): - """Remove selected packages""" - for package in self.table.get_selected_packages(): - self.table.remove_package(package) - - def process_packages(self, action): - """Install/uninstall packages""" - if action == 'install': - text, table = 'Installing', self.table - if not self.get_packages_to_be_installed(): - return - elif action == 'uninstall': - text, table = 'Uninstalling', self.untable - else: - raise AssertionError - packages = table.get_selected_packages() - if not packages: - return - func = getattr(self.distribution, action) - thread = Thread(self) - for widget in self.children(): - if isinstance(widget, QWidget): - widget.setEnabled(False) - try: - status = self.statusBar() - except AttributeError: - status = self.parent().statusBar() - progress = QProgressDialog( - self, Qt.FramelessWindowHint - ) - progress.setMaximum( - len(packages) - ) # old vicious bug:len(packages)-1 - for index, package in enumerate(packages): - progress.setValue(index) - progress.setLabelText( - f"{text} {package.name} {package.version}..." - ) - QApplication.processEvents() - if progress.wasCanceled(): - break - if package in table.model.actions: - try: - thread.callback = lambda: func(package) - thread.start() - while thread.isRunning(): - QApplication.processEvents() - if progress.wasCanceled(): - status.setEnabled(True) - status.showMessage( - "Cancelling operation..." - ) - table.remove_package(package) - error = thread.error - except Exception as error: - error = str(error) # to_text_string(error) - if error is not None: - pstr = ( - package.name + ' ' + package.version - ) - QMessageBox.critical( - self, - "Error", - f"Unable to {action} {pstr}/i>" - f"

Error message:
{error}" - , - ) - progress.setValue(progress.maximum()) - status.clearMessage() - for widget in self.children(): - if isinstance(widget, QWidget): - widget.setEnabled(True) - thread = None - for table in (self.table, self.untable): - table.refresh_distribution(self.distribution) - - def report_issue(self): - - issue_template = f"""\ -Python distribution: {python_distribution_infos()} -Control panel version: {__version__} - -Python Version: {platform.python_version()} -Qt Version: {winpython._vendor.qtpy.QtCore.__version__}, {winpython.qt.API_NAME} {winpython._vendor.qtpy.__version__} - -What steps will reproduce the problem? -1. -2. -3. - -What is the expected output? What do you see instead? - - -Please provide any additional information below. -""" - - url = QUrl(f"{__project_url__}/issues/entry") - url.addQueryItem("comment", issue_template) - QDesktopServices.openUrl(url) - - def about(self): - """About this program""" - QMessageBox.about( - self, - f"About {self.NAME}", - f"""{self.NAME} {__version__} -
Package Manager and Advanced Tasks -

Copyright © 2012 Pierre Raybaut -
Licensed under the terms of the MIT License -

Created, developed and maintained by Pierre Raybaut -

WinPython at Github.io: downloads, bug reports, - discussions, etc.

-

This program is executed by:
- {python_distribution_infos()}
- Python {platform.python_version()}, Qt {winpython._vendor.qtpy.QtCore.__version__}, {winpython._vendor.qtpy.API_NAME} qtpy {winpython._vendor.qtpy.__version__}""" - , - ) - - -def main(test=False): - app = QApplication([]) - win = PMWindow() - win.show() - if test: - return app, win - else: - app.exec_() - - -def test(): - app, win = main(test=True) - print(sys.modules) - app.exec_() - - -if __name__ == "__main__": - main() diff --git a/winpython/data/categories.ini b/winpython/data/categories.ini deleted file mode 100644 index 3ca5fe29..00000000 --- a/winpython/data/categories.ini +++ /dev/null @@ -1,30 +0,0 @@ -[misc] -description=Misc. - -[scientific] -description=Scientific - -[util] -description=Utilities - -[gui] -description=Graphical User Interfaces - -[plot] -description=2D and 3D Plotting - -[visu3d] -description=3D Visualization - -[improc] -description=Image Processing - -[dataproc] -description=Data Processing - -[deploy] -description=Installation/Deployment - -[docgen] -description=Documentation Generation - diff --git a/winpython/data/packages.ini b/winpython/data/packages.ini deleted file mode 100644 index b3df4a56..00000000 --- a/winpython/data/packages.ini +++ /dev/null @@ -1,3807 +0,0 @@ -[absl-py] -description = Abseil Python Common Libraries, see github.com/abseil/abseil-py. - -[adodbapi] -description = A pure Python package implementing PEP 249 DB-API using Microsoft ADO. - -[affine] -description = Matrices describing affine transformation of the plane. - -[aiodns] -description = Simple DNS resolver for asyncio - -[aiofiles] -description = File support for asyncio. - -[aiohttp] -description = Async http client/server framework (asyncio) - -[aiosqlite] -description = asyncio bridge to the standard sqlite3 module - -[alabaster] -description = A configurable sidebar-enabled Sphinx theme - -[algopy] -description = ALGOPY: Taylor Arithmetic Computation and Algorithmic Differentiation - -[altair] -description = Altair: A declarative statistical visualization library for Python. - -[altair-data-server] -description = A background data server for Altair charts. - -[altair-transform] -description = A python engine for evaluating Altair transforms. - -[altair-widgets] -description = Altair Widgets: An interactive visualization for statistical data for Python. - -[altgraph] -description = Python graph (network) package - -[amqp] -description = Low-level AMQP client for Python (fork of amqplib). - -[aniso8601] -description = A library for parsing ISO 8601 strings. - -[ansiwrap] -description = textwrap, but savvy to ANSI colors and styles - -[anyio] -description = High level compatibility layer for multiple asynchronous event loop implementations - -[anyjson] -description = Wraps the best available JSON implementation available in a common interface - -[apispec] -description = A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification). - -[apistar] -description = API documentation, validation, mocking, and clients. - -[appdirs] -description = A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". - -[apptools] -description = application tools - -[argcomplete] -description = Bash tab completion for argparse - -[argh] -description = An unobtrusive argparse wrapper with natural syntax - -[args] -description = Command Arguments for Humans. - -[asgiref] -description = ASGI specs, helper code, and adapters - -[asciitree] -description = Draws ASCII trees. - -[asn1crypto] -description = Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP - -[asteval] -description = Safe, minimalistic evaluator of python expression using ast module - -[astor] -description = Read/rewrite/write Python ASTs - -[astroid] -description = An abstract syntax tree for Python with inference support. - -[astroml] -description = tools for machine learning and data mining in Astronomy - -[astropy] -description = Community-developed python astronomy tools - -[astunparse] -description = An AST unparser for Python - -[async-generator] -description = Async generators and context managers for Python 3.5+ - -[async-timeout] -description = Timeout context manager for asyncio programs - -[atomicwrites] -description = Atomic file writes. - -[attrs] -description = Classes Without Boilerplate - -[autopep8] -description = A tool that automatically formats Python code to conform to the PEP 8 style guide - -[azureml-dataprep] -description = Azure ML Data Preparation SDK - -[babel] -description = Internationalization utilities - -[backcall] -description = Specifications for callback functions passed in to an API - -[backports-abc] -description = A backport of recent additions to the 'collections.abc' module. - -[backports-shutil-get-terminal-size] -description = A backport of the get_terminal_size function from Python 3.3's shutil. - -[backports-ssl-match-hostname] -description = The ssl.match_hostname() function from Python 3.4 - -[backports-weakref] -description = Backport of new features in Python's weakref module - -[bandit] -description = Security oriented static analyser for python code. - -[baresql] -description = playing SQL directly on Python datas - -[base58] -description = Base58 and Base58Check implementation - -[bcolz] -description = columnar and compressed data containers. - -[bcrypt] -description = Modern password hashing for your software and your servers - -[beautifulsoup4] -description = Screen-scraping library - -[billiard] -description = Python multiprocessing fork with improvements and bugfixes - -[binaryornot] -description = Ultra-lightweight pure Python package to check if a file is binary or text. - -[bitarray] -description = efficient arrays of booleans -- C extension - -[bkcharts] -description = High level chart types built on top of Bokeh - -[black] -description = The uncompromising code formatter. - -[blaze] -description = Blaze - -[bleach] -description = An easy safelist-based HTML-sanitizing tool. - -[blinker] -description = Fast, simple object-to-object and broadcast signaling - -[blosc] -description = Blosc data compressor - -[bloscpack] -description = Command line interface to and serialization format for Blosc - -[bokeh] -description = Interactive plots and applications in the browser from Python - -[boto3] -description = The AWS SDK for Python - -[botocore] -description = Low-level, data-driven core of boto 3. - -[bottle] -description = Fast and simple WSGI-framework for small web-applications. - -[bottleneck] -description = Fast NumPy array functions written in C - -[bqplot] -description = Interactive plotting for the Jupyter notebook, using d3.js and ipywidgets. - -[branca] -description = Generate complex HTML+JS pages with Python - -[brewer2mpl] -description = Connect colorbrewer2.org color maps to Python and matplotlib - -[brotli] -description = Python bindings for the Brotli compression library - -[cachetools] -description = Extensible memoizing collections and decorators - -[cartopy] -description = A cartographic python library with Matplotlib support for visualisation - -[castra] -description = On-disk partitioned store - -[cchardet] -description = cChardet is high speed universal character encoding detector. - -[cssselect] -description = cssselect parses CSS3 Selectors and translates them to XPath 1.0 - -[celery] -description = Distributed Task Queue. - -[celerite] -description = Scalable 1D Gaussian Processes - -[certifi] -description = Python package for providing Mozilla's CA Bundle. - -[ceodbc] -description = Python interface to ODBC - -[cffi] -description = Foreign Function Interface for Python calling C code. - -[cftime] -description = Time-handling functionality from netcdf4-python - -[chainer] -description = A flexible framework of neural networks - -[chardet] -description = Universal encoding detector for Python 2 and 3 - -[click] -description = Composable command line interface toolkit - -[click-default-group] -description = Extends click.Group to invoke a command without explicit subcommand name - -[click-plugins] -description = An extension module for click to enable registering CLI commands via setuptools entry-points. - -[cligj] -description = Click params for commmand line interfaces to GeoJSON - -[clint] -description = Python Command Line Interface Tools - -[cloudpickle] -description = Extended pickling support for Python objects - -[clrmagic] -description = IPython cell magic to use .NET languages - -[cmarkgfm] -description = Minimal bindings to GitHub's fork of cmark - -[cntk] -description = CNTK is an open-source, commercial-grade deep learning framework. - -[colorama] -description = Cross-platform colored terminal text. - -[colorcet] -description = Collection of perceptually uniform colormaps - -[coloredlogs] -description = Colored terminal output for Python's logging module - -[comtypes] -description = Pure Python COM package - -[commonmark] -description = Python parser for the CommonMark Markdown spec - -[cookiecutter] -description = A command-line utility that creates projects from project templates, e.g. creating a Python package project from a Python package project template. - -[configobj] -description = Config file reading, writing and validation. - -[configparser] -description = Updated configparser from Python 3.8 for Python 2.6+. - -[contextily] -description = Context geo-tiles in Python - -[contextlib2] -description = Backports and enhancements for the contextlib module - -[contextvars] -description = PEP 567 Backport - -[convertdate] -description = Converts between Gregorian dates and other calendar systems.Calendars included: Baha'i, French Republican, Hebrew, Indian Civil, Islamic, ISO, Julian, Mayan and Persian. - -[corner] -description = Make some beautiful corner plots of samples. - -[coverage] -description = Code coverage measurement for Python - -[cryptography] -description = cryptography is a package which provides cryptographic recipes and primitives to Python developers. - -[cupy] -description = CuPy: NumPy-like API accelerated with CUDA - -[curio] -description = Curio - -[cvxcanon] -description = A low-level library to perform the matrix building step in cvxpy, a convex optimization modeling software. - -[cvxopt] -description = Convex optimization package - -[cvxpy] -description = A domain-specific language for modeling convex optimization problems in Python. - -[cx-freeze] -description = create standalone executables from Python scripts - -[cycler] -description = Composable style cycles - -[cymem] -description = Manage calls to calloc/free through Cython - -[cyordereddict] -description = Cython implementation of Python's collections.OrderedDict - -[cython] -description = The Cython compiler for writing C extensions for the Python language. - -[cytoolz] -description = Cython implementation of Toolz: High performance functional utilities - -[dash] -description = A Python framework for building reactive web-apps. Developed by Plotly. - -[dash-core-components] -description = Core component suite for Dash - -[dash-html-components] -description = Vanilla HTML components for Dash - -[dash-renderer] -description = Front-end component renderer for Dash - -[dash-table] -description = Dash table - -[dask] -description = Parallel PyData with Task Scheduling - -[dask-labextension] -description = A Jupyter Notebook server extension manages Dask clusters. - -[dask-ml] -description = A library for distributed and parallel machine learning - -[dask-searchcv] -description = Tools for doing hyperparameter search with Scikit-Learn and Dask - -[databases] -description = Async database support for Python. - -[dataclasses] -description = A backport of the dataclasses module for Python 3.6 - -[datafabric] -description = Distributed In-Memory system for analytics - -[datasette] -description = A tool for exploring and publishing data - -[datashader] -description = Data visualization toolchain based on aggregating into a grid - -[datashape] -description = A data description language. - -[db-py] -description = a db package that doesn't suck - -[decorator] -description = Decorators for Humans - -[defusedxml] -description = XML bomb protection for Python stdlib modules - -[deprecated] -description = Python @deprecated decorator to deprecate old python classes, functions or methods. - -[descartes] -description = Use geometric objects as matplotlib paths and patches - -[diff-match-patch] -description = Repackaging of Google's Diff Match and Patch libraries. Offers robust algorithms to perform the operations required for synchronizing plain text. - -[dill] -description = serialize all of python - -[discretize] -description = Discretization tools for finite volume and inverse problems - -[distribute] -description = distribute legacy wrapper - -[distributed] -description = Distributed scheduler for Dask - -[dm-sonnet] -description = Sonnet is a library for building neural networks in TensorFlow. - -[dnspython] -description = DNS toolkit - -[docopt] -description = Pythonic argument parser, that will make you smile - -[docrepr] -description = docrepr renders Python docstrings in HTML - -[docutils] -description = Docutils -- Python Documentation Utilities - -[dopamine] -description = A library to use DopamineLabs machine learning API - -[dynd] -description = Python exposure of DyND - -[egenix-mx-base] -description = eGenix mx Base Distribution for Python - mxDateTime, mxTextTools, mxProxy, mxTools, mxBeeBase, mxStack, mxQueue, mxURL, mxUID - -[ecos] -description = This is the Python package for ECOS: Embedded Cone Solver. See Github page for more information. - -[edward] -description = A library for probabilistic modeling, inference, and criticism - -[emcee] -description = The Python ensemble sampling toolkit for MCMC - -[enum34] -description = Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, and 2.4 - -[enum-compat] -description = enum/enum34 compatibility package - -[entrypoints] -description = Discover and load entry points from installed packages. - -[envisage] -description = Extensible application framework - -[ephem] -description = Compute positions of the planets and stars - -[eradicate] -description = Removes commented-out code. - -[falcon] -description = An unladen web framework for building APIs and app backends. - -[fast-histogram] -description = Fast simple 1D and 2D histograms - -[fastai] -description = fastai makes deep learning with PyTorch faster, more accurate, and easier - -[fastapi] -description = FastAPI framework, high performance, easy to learn, fast to code, ready for production - -[fastcache] -description = C implementation of Python 3 functools.lru_cache - -[fasteners] -description = A python package that provides useful locks. - -[fastparquet] -description = Python support for Parquet file format - -[fastprogress] -description = A nested progress with plotting options for fastai - -[fastrlock] -description = Fast, re-entrant optimistic lock implemented in Cython - -[fastscript] -description = A fast way to turn your python function into a script - -[fbprophet] -description = Automatic Forecasting Procedure - -[feather-format] -description = Simple wrapper library to the Apache Arrow-based Feather File Format - -[fenics] -description = The FEniCS Project Python Metapackage - -[filelock] -description = A platform independent file lock. - -[fiona] -description = Fiona reads and writes spatial data files - -[flake8] -description = the modular source code checker: pep8, pyflakes and co - -[flask] -description = A simple framework for building complex web applications. - -[flaskerize] -description = Python CLI build/dev tool for templated code generation and project modification. Think Angular schematics for Python. - -[flask-accepts] -description = Easy, opinionated Flask input/output handling with Flask-restx and Marshmallow - -[flask-compress] -description = Compress responses in your Flask app with gzip. - -[flask-cors] -description = A Flask extension adding a decorator for CORS support - -[flask-restplus] -description = Fully featured framework for fast, easy and documented API development with Flask - -[flask-restx] -description = Fully featured framework for fast, easy and documented API development with Flask - -[flask-seasurf] -description = An updated CSRF extension for Flask. - -[flexx] -description = Write desktop and web apps in pure Python. - -[flit] -description = A simple packaging tool for simple packages. - -[folium] -description = Make beautiful maps with Leaflet.js & Python - -[fonttools] -description = Tools to manipulate font files - -[formlayout] -description = The most easy way to create Qt form dialogs and widgets with Python - -[fs] -description = Python's filesystem abstraction layer - -[fsspec] -description = File-system specification - -[fuel] -description = Data pipeline framework for machine learning - -[funcsigs] -description = Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2+ - -[functools32] -description = Backport of the functools module from Python 3.2.3 for use on 2.7 and PyPy. - -[future] -description = Clean single-source support for Python 3 and 2 - -[futures] -description = Backport of the concurrent.futures package from Python 3 - -[fuzzywuzzy] -description = Fuzzy string matching in python - -[gast] -description = Python AST that abstracts the underlying Python version - -[gdal] -description = GDAL: Geospatial Data Abstraction Library - -[gensim] -description = Python framework for fast Vector Space Modelling - -[geoana] -description = geoana - -[geopy] -description = Python Geocoding Toolbox - -[geographiclib] -description = The geodesic routines from GeographicLib - -[geopandas] -description = Geographic pandas extensions - -[geoplot] -description = High-level geospatial plotting for Python. - -[geoviews] -description = GeoViews is a Python library that makes it easy to explore and visualize geographical, meteorological, and oceanographic datasets, such as those used in weather, climate, and remote sensing research. - -[ggplot] -description = ggplot for python - -[ghost-py] -description = Webkit based webclient. - -[gin-config] -description = Gin-Config: A lightweight configuration library for Python - -[gitdb2] -description = A mirror package for gitdb - -[gitpython] -description = Python Git Library - -[gmpy2] -description = GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x - -[gnumath] -description = Extensible array functions that operate on xnd containers. - -[google-auth] -description = Google Authentication Library - -[google-auth-oauthlib] -description = Google Authentication Library - -[google-api-python-client] -description = Google API Client Library for Python - -[google-pasta] -description = pasta is an AST-based Python refactoring library - -[gr] -description = Python visualization framework - -[graphql-relay] -description = Relay library for graphql-core-next - -[graphql-core] -description = GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. - -[graphviz] -description = Simple Python interface for Graphviz - -[graphene] -description = GraphQL Framework for Python - -[graphql-server-core] -description = GraphQL Server tools for powering your server - -[greenlet] -description = Lightweight in-process concurrent programming - -[gridmap] -description = Easily map Python functions onto a cluster using a DRMAA-compatible grid engine like Sun Grid Engine (SGE). - -[grpcio] -description = HTTP/2-based RPC framework - -[guidata] -description = Automatic graphical user interfaces generation for easy dataset editing and display - -[guiqwt] -description = guiqwt is a set of tools for curve and image plotting (extension to PythonQwt) - -[gym] -description = The OpenAI Gym: A toolkit for developing and comparing your reinforcement learning agents. - -[hdfs] -description = HdfsCLI: API and command line interface for HDFS. - -[heapdict] -description = a heap with decrease-key and increase-key operations - -[helpdev] -description = HelpDev - Extracts information about the Python environment easily. - -[hiplot] -description = High dimensional Interactive Plotting tool - -[holidays] -description = Generate and work with holidays in Python - -[holoviews] -description = Stop plotting your data - annotate your data and let it visualize itself. - -[hpack] -description = Pure-Python HPACK header compression - -[hvplot] -description = A high-level plotting API for the PyData ecosystem built on HoloViews. - -[html5lib] -description = HTML parser based on the WHATWG HTML specification - -[httplib2] -description = A comprehensive HTTP client library. - -[humanfriendly] -description = Human friendly output for text interfaces using Python - -[husl] -description = Human-friendly HSL - -[hupper] -description = Integrated process monitor for developing and reloading daemons. - -[hypercorn] -description = A ASGI Server based on Hyper libraries and inspired by Gunicorn. - -[hyperframe] -description = HTTP/2 framing layer for Python - -[hypothesis] -description = A library for property-based testing - -[h11] -description = A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 - -[h2] -description = HTTP/2 State-Machine based protocol implementation - -[h5py] -description = Read and write HDF5 files from Python - -[ibis-framework] -description = Productivity-centric Python Big Data Framework - -[ipydatawidgets] -description = A set of widgets to help facilitate reuse of large datasets across widgets - -[idlex] -description = IDLE Extensions for Python - -[idna] -description = Internationalized Domain Names in Applications (IDNA) - -[imageio] -description = Library for reading and writing a wide range of image, video, scientific, and volumetric data formats. - -[imageio-ffmpeg] -description = FFMPEG wrapper for Python - -[imbalanced-learn] -description = Toolbox for imbalanced dataset in machine learning. - -[immutables] -description = Immutable Collections - -[imagesize] -description = Getting image size from png/jpeg/jpeg2000/gif file - -[importlib-metadata] -description = Read metadata from Python packages - -[intake] -description = Data load and catalog system - -[intervaltree] -description = Editable interval tree data structure for Python 2 and 3 - -[ipycanvas] -description = Interactive widgets library exposing the browser's Canvas API - -[ipykernel] -description = IPython Kernel for Jupyter - -[ipyleaflet] -description = A Jupyter widget for dynamic Leaflet maps - -[ipympl] -description = Matplotlib Jupyter Extension - -[ipyparallel] -description = Interactive Parallel Computing with IPython - -[ipyscales] -description = A widget library for scales - -[ipython] -description = IPython: Productive Interactive Computing - -[ipython-genutils] -description = Vestigial utilities from IPython - -[ipython-sql] -description = RDBMS access via IPython - -[ipyvega] -description = IPython/Jupy - -[ipyvolume] -description = IPython widget for rendering 3d volumes - -[ipyvuetify] -description = Jupyter widgets based on vuetify UI components - -[ipywebrtc] -description = WebRTC for Jupyter notebook/lab - -[ipywidgets] -description = IPython HTML widgets for Jupyter - -[isort] -description = A Python utility / library to sort Python imports. - -[itsdangerous] -description = Various helpers to pass data to untrusted environments and back. - -[janus] -description = Mixed sync-async queue to interoperate between asyncio tasks and classic threads - -[jax] -description = Differentiate, compile, and transform Numpy code. - -[jedi] -description = An autocompletion tool for Python that can be used for text editors. - -[jinja2] -description = A small but fast and easy to use stand-alone template engine written in pure python. - -[jmespath] -description = JSON Matching Expressions - -[joblib] -description = Lightweight pipelining: using Python functions as pipeline jobs. - -[jnius] -description = Dynamic access to Java classes from Python - -[jplephem] -description = Use a JPL ephemeris to predict planet positions. - -[jsonschema] -description = An implementation of JSON Schema validation for Python - -[json5] -description = A Python implementation of the JSON5 data format. - -[julia] -description = Julia/Python bridge with IPython support. - -[jupyter] -description = Jupyter metapackage. Install all the Jupyter components in one go. - -[jupyter-echarts-pypkg] -description = Echarts pypi packages for jupyter and python - -[jupyterlab] -description = The JupyterLab notebook server extension. - -[jupyterlab-launcher] -description = Jupyter Launcher - -[jupyterlab-sql] -description = JupyterLab plugin for visualizing SQL databases - -[jupyter-client] -description = Jupyter protocol implementation and client libraries - -[jupyter-console] -description = Jupyter terminal console - -[jupyter-core] -description = Jupyter core package. A base package on which Jupyter projects rely. - -[jupyter-panel-proxy] -description = Jupyter Server Proxy for Panel applications - -[jupyterlab-pygments] -description = Pygments theme - -[jupyterlab-server] -description = JupyterLab Server - -[jupyter-server] -description = The Jupyter Server - -[jupyter-sphinx] -description = Jupyter Sphinx Extensions - -[jupytext] -description = Jupyter notebooks as Markdown documents, Julia, Python or R scripts - -[kapteyn] -description = Kapteyn Package: Python modules for astronomical applications - -[keras] -description = Deep Learning for humans - -[keras-applications] -description = Reference implementations of popular deep learning models - -[keras-preprocessing] -description = Easy data preprocessing and data augmentation for deep learning models - -[keras-vis] -description = Neural Network visualization toolkit for keras - -[keras-tuner] -description = Hypertuner for Keras - -[keyring] -description = Store and access your passwords safely. - -[kivy] -description = A software library for rapid development of hardware-accelerated multitouch applications. - -[kivy-garden] -description = Garden tool for kivy flowers. - -[kiwisolver] -description = A fast implementation of the Cassowary constraint solver - -[knack] -description = A Command-Line Interface framework - -[knit] -description = Python wrapper for YARN Applications - -[kombu] -description = Messaging library for Python. - -[lasagne] -description = A lightweight library to build and train neural networks in Theano - -[lazy-object-proxy] -description = A fast and thorough lazy object proxy. - -[libpython] -description = The MinGW import library for Python - -[lightfm] -description = LightFM recommendation model - -[lightning-python] -description = A Python client library for the Lightning data visualization server - -[llvmlite] -description = lightweight wrapper around basic LLVM functionality - -[llvmpy] -description = Python bindings for LLVM - -[lmfit] -description = Least-Squares Minimization with Bounds and Constraints - -[lml] -description = Load me later. A lazy plugin management system. - -[lock] -description = module for enabling file locks - -[locket] -description = File-based locks for Python for Linux and Windows - -[locket-py] -description = File-based locks for Python for Linux and Windows - -[logilab-astng] -description = rebuild a new abstract syntax tree from Python's ast - -[logilab-common] -description = collection of low-level Python packages and modules used by Logilab projects - -[logutils] -description = Logging utilities - -[loky] -description = A robust implementation of concurrent.futures.ProcessPoolExecutor - -[lunardate] -description = A Chinese Calendar Library in Pure Python - -[lxml] -description = Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API. - -[lz4] -description = LZ4 Bindings for Python - -[macholib] -description = Mach-O header analysis and editing - -[mahotas] -description = Mahotas: Computer Vision Library - -[mako] -description = A super-fast templating language that borrows the best ideas from the existing templating languages. - -[mapclassify] -description = Classification Schemes for Choropleth Maps. - -[markdown] -description = Python implementation of Markdown. - -[markdown2] -description = A fast and complete Python implementation of Markdown - -[markupsafe] -description = Safely add untrusted strings to HTML/XML markup. - -[marshmallow] -description = A lightweight library for converting complex datatypes to and from native Python datatypes. - -[matplotlib] -description = Python plotting package - -[mayavi] -description = 3D scientific data visualization library and application - -[mccabe] -description = McCabe checker, plugin for flake8 - -[mercantile] -description = Web mercator XYZ tile utilities - -[mercurial] -description = Fast scalable distributed SCM (revision control, version control) system - -[metakernel] -description = Metakernel for Jupyter - -[mingwpy] -description = the python friendly windows compiler toolchain - -[mistune] -description = The fastest markdown parser in pure Python - -[mizani] -description = Scales for Python - -[mlxtend] -description = Machine Learning Library Extensions - -[mkl-service] -description = Python bindings to some MKL service functions - -[mlflow] -description = MLflow: An ML Workflow Tool - -[mock] -description = Rolling backport of unittest.mock for all Pythons - -[modergnl] -description = Modern OpenGL binding for python - -[modin] -description = Modin: Make your pandas code run faster by changing one line of code. - -[monotonic] -description = An implementation of time.monotonic() for Python 2 & < 3.3 - -[more-itertools] -description = More routines for operating on iterables, beyond itertools - -[moviepy] -description = Video editing with Python - -[mpldatacursor] -description = Interactive data cursors for Matplotlib - -[mpld3] -description = D3 Viewer for Matplotlib - -[mpl-scatter-density] -description = Matplotlib helpers to make density scatter plots - -[mpmath] -description = Python library for arbitrary-precision floating-point arithmetic - -[msgpack] -description = MessagePack (de)serializer. - -[msgpack-numpy] -description = Numpy data serialization using msgpack - -[msgpack-python] -description = MessagePack (de)serializer. - -[multidict] -description = multidict implementation - -[multipledispatch] -description = Multiple dispatch - -[multiprocess] -description = better multiprocessing and multithreading in python - -[murmurhash] -description = Cython bindings for MurmurHash - -[munch] -description = A dot-accessible dictionary (a la JavaScript objects) - -[mxbase] -description = eGenix.com mx Base Distribution: mxDateTime, mxTextTools, mxProxy, mxBeeBase, mxURL, mxUID, mxStack, mxQueue and mxTools - -[mypy] -description = Optional static typing for Python - -[mypy-extensions] -description = Experimental type system extensions for programs checked with the mypy typechecker. - -[mysql-connector-python] -description = MySQL driver written in Python - -[nbbrowserpdf] -description = LaTeX-free PDF generation from Jupyter Notebooks - -[nbclient] -description = A client library for executing notebooks. Formally nbconvert's ExecutePreprocessor. - -[nbconvert] -description = Converting Jupyter Notebooks - -[nbconvert-reportlab] -description = Convert notebooks to PDF using Reportlab - -[nbdev] -description = Writing a library entirely in notebooks - -[nbdime] -description = Diff and merge of Jupyter Notebooks - -[nbformat] -description = The Jupyter Notebook format - -[nbgrader] -description = A system for assigning and grading notebooks - -[nbpresent] -description = Next generation slides from Jupyter Notebooks - -[nbsphinx] -description = Jupyter Notebook Tools for Sphinx - -[ndtypes] -description = Dynamic types for data description and in-memory computations. - -[netcdftime] -description = Time-handling functionality from netcdf4-python - -[nest-asyncio] -description = Patch asyncio to allow nested event loops - -[netcdf4] -description = Provides an object-oriented python interface to the netCDF version 4 library. - -[networkx] -description = Python package for creating and manipulating graphs and networks - -[nltk] -description = Natural Language Toolkit - -[nose] -description = nose extends unittest to make testing easier - -[notebook] -description = A web-based notebook environment for interactive computing - -[nteract-on-jupyter] -description = Extension for the jupyter notebook server and nteract - -[numba] -description = compiling Python code using LLVM - -[numcodecs] -description = A Python package providing buffer compression and transformation codecs for use in data storage and communication applications. - -[numdifftools] -description = Solves automatic numerical differentiation problems in one or more variables. - -[numexpr] -description = Fast numerical expression evaluator for NumPy - -[numpy] -description = NumPy is the fundamental package for array computing with Python. - -[numpydoc] -description = Sphinx extension to support docstrings in Numpy format - -[nvidia-ml-py3] -description = Python Bindings for the NVIDIA Management Library - -[oauthlib] -description = A generic, spec-compliant, thorough implementation of the OAuth request-signing logic - -[oauth2client] -description = OAuth 2.0 client library - -[observations] -description = Tools for loading standard data sets in machine learning - -[octave-kernel] -description = A Jupyter kernel for Octave. - -[oct2py] -description = Python to GNU Octave bridge --> run m-files from python. - -[odo] -description = Data migration utilities - -[olefile] -description = Python package to parse, read and write Microsoft OLE2 files (Structured Storage or Compound Document, Microsoft Office) - -[opencv-python] -description = Wrapper package for OpenCV python bindings. - -[openimageio] -description = a library for reading and writing images with emphasis on animation and visual effects. - -[openpyxl] -description = A Python library to read/write Excel 2010 xlsx/xlsm files - -[opt-einsum] -description = Optimizing numpys einsum function - -[orange] -description = Orange, a component-based data mining framework. - -[osqp] -description = OSQP: The Operator Splitting QP Solver - -[outcome] -description = Capture the outcome of Python function calls. - -[packaging] -description = Core utilities for Python packages - -[palettable] -description = Color palettes for Python - -[palladium] -description = Framework for setting up predictive analytics services - -[pandas] -description = Powerful data structures for data analysis, time series, and statistics - -[pandasql] -description = sqldf for pandas - -[pandas-datareader] -description = Data readers extracted from the pandas codebase,should be compatible with recent pandas versions - -[pandas-ply] -description = functional data manipulation for pandas - -[pandocfilters] -description = Utilities for writing pandoc filters in python - -[panel] -description = A high level app and dashboarding solution for Python. - -[papermill] -description = Parametrize and run Jupyter and nteract Notebooks - -[param] -description = Declarative Python programming using Parameters. - -[parambokeh] -description = ParamBokeh provides an easy way to generate a UI for param based classes in the notebook or on bokeh server. - -[paramnb] -description = Generate ipywidgets from Parameterized objects in the notebook - -[paramiko] -description = SSH2 protocol library - -[parse] -description = parse() is the opposite of format() - -[parso] -description = A Python Parser - -[partd] -description = Appendable key-value storage - -[passlib] -description = comprehensive password hashing framework supporting over 30 schemes - -[pathspec] -description = Utility library for gitignore style pattern matching of file paths. - -[pathtools] -description = File system general utilities - -[path-py] -description = A module wrapper for os.path - -[patsy] -description = A Python package for describing statistical models and for building design matrices. - -[pbr] -description = Python Build Reasonableness - -[pdfrw] -description = PDF file reader/writer library - -[pdvega] -description = Pandas plotting interface to Vega and Vega-Lite - -[peewee] -description = a little orm - -[pefile] -description = Python PE parsing module - -[pep8] -description = Python style guide checker - -[perf] -description = Python module to generate and modify perf - -[performance] -description = Python benchmark suite - -[pexpect] -description = Pexpect allows easy control of interactive console applications. - -[pgmagick] -description = Yet Another Python wrapper for GraphicsMagick - -[pg8000] -description = PostgreSQL interface library - -[pkginfo] -description = Query metadatdata from sdists / bdists / installed packages. - -[picklable-itertools] -description = itertools. But picklable. Even on Python 2. - -[pickleshare] -description = Tiny 'shelve'-like database with concurrency support - -[pil] -description = Python Imaging Library - -[pillow] -description = Python Imaging Library (Fork) - -[pint] -description = Physical quantities module - -[pip] -description = The PyPA recommended tool for installing Python packages. - -[plotly] -description = An open-source, interactive graphing library for Python - -[plotnine] -description = A grammar of graphics for python - -[plotpy] -description = Plotpy is a library which results from merge of guidata and guiqwt. - -[pluggy] -description = plugin and hook calling mechanisms for python - -[ply] -description = Python Lex & Yacc - -[polygon2] -description = Polygon2 is a Python-2 package that handles polygonal shapes in 2D - -[polygon3] -description = Polygon3 is a Python-3 package that handles polygonal shapes in 2D - -[pomegranate] -description = Pomegranate is a graphical models library for Python, implemented in Cython for speed. - -[portalocker] -description = Wraps the portalocker recipe for easy usage - -[portpicker] -description = A library to choose unique available network ports. - -[poyo] -description = A lightweight YAML Parser for Python. 🐓 - -[ppci] -description = A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python - -[preshed] -description = Cython hash table that trusts the keys are pre-hashed - -[prettytable] -description = A simple Python library for easily displaying tabular data in a visually appealing ASCII table format. - -[prettytensor] -description = Pretty Tensor makes learning beautiful - -[priority] -description = A pure-Python implementation of the HTTP/2 priority tree - -[proglog] -description = Log and progress bar manager for console, notebooks, web... - -[progressbar] -description = Text progress bar library for Python. - -[progressbar2] -description = A Python Progressbar library to provide visual (yet text based) progress to long running operations. - -[prometheus-client] -description = Python client for the Prometheus monitoring system. - -[promise] -description = Promises/A+ implementation for Python - -[properties] -description = properties: an organizational aid and wrapper for validation and tab completion of class properties - -[prompt-toolkit] -description = Library for building powerful interactive command lines in Python - -[prospector] -description = Prospector: python static analysis tool - -[protobuf] -description = Protocol Buffers - -[pscript] -description = Python to JavaScript compiler. - -[psutil] -description = Cross-platform lib for process and system monitoring in Python. - -[psycopg2] -description = psycopg2 - Python-PostgreSQL Database Adapter - -[ptpython] -description = Python REPL build on top of prompt_toolkit - -[ptvsd] -description = Remote debugging server for Python support in Visual Studio and Visual Studio Code - -[ptyprocess] -description = Run a subprocess in a pseudo terminal - -[pulp] -description = PuLP is an LP modeler written in python. PuLP can generate MPS or LP files and call GLPK, COIN CLP/CBC, CPLEX, and GUROBI to solve linear problems. - -[pweave] -description = Scientific reports with embedded python computations with reST, LaTeX or markdown - -[py] -description = library with cross-python path, ini-parsing, io, code, log facilities - -[pyaml] -description = PyYAML-based module to produce pretty and readable YAML-serialized data - -[pyct] -description = python package common tasks for users (e.g. copy examples, fetch data, ...) - -[pyarrow] -description = Python library for Apache Arrow - -[pyasn1] -description = ASN.1 types and codecs - -[pyasn1-modules] -description = A collection of ASN.1-based protocols modules. - -[pyaudio] -description = Bindings for PortAudio v19, the cross-platform audio input/output stream library. - -[pybars3] -description = Handlebars.js templating for Python 3 and 2 - -[pybind11] -description = Seamless operability between C++11 and Python - -[pycares] -description = Python interface for c-ares - -[pycairo] -description = Python interface for cairo - -[pycodestyle] -description = Python style guide checker - -[pycosat] -description = bindings to picosat (a SAT solver) - -[pycparser] -description = C parser in Python - -[pydantic] -description = Data validation and settings management using python 3.6 type hinting - -[pydeck] -description = Widget for deck.gl maps - -[pydicom] -description = Pure python package for DICOM medical file reading and writing - -[pydispatcher] -description = Multi-producer-multi-consumer signal dispatching mechanism - -[pydocstyle] -description = Python docstring style checker - -[pydot-ng] -description = Python interface to Graphviz's Dot - -[pyecharts] -description = Python options, make charting easier - -[pyecharts-javascripthon] -description = Embeded Python functions in pyecharts - -[pyecharts-jupyter-installer] -description = Install pyecharts extensions into jupyter - -[pyeda] -description = Python Electronic Design Automation - -[pyepsg] -description = Easy access to the EPSG database via http epsg.io/ - -[pyface] -description = traits-capable windowing framework - -[pyflakes] -description = passive checker of Python programs - -[pyflux] -description = PyFlux: A time-series analysis library for Python - -[pygame] -description = Python Game Development - -[pygbm] -description = Experimental, numba-based Gradient Boosting Machines - -[pygit2] -description = Python bindings for libgit2. - -[pyglet] -description = Cross-platform windowing and multimedia library - -[pygments] -description = Pygments is a syntax highlighting package written in Python. - -[pygraphviz] -description = Python interface to Graphviz - -[pyhdf] -description = pyhdf: Python interface to the NCSA HDF4 library. - -[pyhive] -description = Python interface to Hive - -[pyinstaller] -description = PyInstaller bundles a Python application and all its dependencies into a single package. - -[pylama] -description = pylama -- Code audit tool for python - -[pylearn2] -description = A Machine Learning library based on Theano - -[pylint] -description = python code static checker - -[pylons] -description = Pylons Web Framework - -[pymatsolver] -description = pymatsolver: Matrix Solvers for Python - -[pymc] -description = Markov Chain Monte Carlo sampling toolkit. - -[pymc3] -description = Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Theano - -[pymeta3] -description = Pattern-matching language based on OMeta for Python 3 and 2 - -[pymkl] -description = Python wrapper of Intel MKL routines - -[pymongo] -description = Python driver for MongoDB - -[pympler] -description = A development tool to measure, monitor and analyze the memory behavior of Python objects. - -[pynacl] -description = Python binding to the Networking and Cryptography (NaCl) library - -[pyodbc] -description = DB API Module for ODBC - -[pyomo] -description = Pyomo: Python Optimization Modeling Objects - -[pyopencl] -description = Python wrapper for OpenCL - -[pyopengl] -description = Standard OpenGL bindings for Python - -[pyopenssl] -description = Python wrapper module around the OpenSSL library - -[pypandoc] -description = Thin wrapper for pandoc. - -[pypdf2] -description = PDF toolkit - -[pyparsing] -description = Python parsing module - -[pyperf] -description = Python module to run and analyze benchmarks - -[pyproj] -description = Python interface to PROJ (cartographic projections and coordinate transformations library) - -[pypiwin32] -description = Python for Windows Extensions - -[pyqt] -description = Cross-platform Application Framework: GUI, widgets, SQL, OpenGL, XML, Unicode... - -[pyqtchart] -description = Python bindings for the Qt Charts library - -[pyqtdatavisualization] -description = Python bindings for the Qt Data Visualization library - -[pyqtdeploy] -description = PyQt Application Deployment Tool - -[pyqtgraph] -description = Scientific Graphics and GUI Library for Python - -[pyqtpurchasing] -description = Python bindings for the Qt Purchasing library - -[pyqt4] -description = Python bindings for the Qt cross platform GUI toolkit - -[pyqt5] -description = Python bindings for the Qt cross platform application toolkit - -[pyqt5-sip] -description = The sip module support for PyQt5 - -[pyqtdoc] -description = PyQtdoc installs Qt documentation for PyQt - -[pyqtdesignerplugins] -description = PyQtdesignerplugins installs Qt Designer plugins for PyQt4 - -[pyqtwebengine] -description = Python bindings for the Qt WebEngine framework - -[pyqwt] -description = 2D plotting library (set of Python bindings for the Qwt library featuring fast plotting) - -[pyramid] -description = The Pyramid Web Framework, a Pylons project - -[pyreadline] -description = A python implmementation of GNU readline. - -[pyroma] -description = Test your project's packaging friendliness - -[pyrro-ppl] -description = A Python library for probabilistic modeling and inference - -[pyrsistent] -description = Persistent/Functional/Immutable data structures - -[pysal] -description = A library of spatial analysis functions. - -[pyserial] -description = Python Serial Port Extension - -[pyshp] -description = Pure Python read/write support for ESRI Shapefile format - -[pyside] -description = Python bindings for the Qt cross-platform application and UI framework - -[pyside2] -description = Python bindings for the Qt cross-platform application and UI framework - -[pyspark] -description = Apache Spark Python API - -[pystache] -description = Mustache for Python - -[pystan] -description = Python interface to Stan, a package for Bayesian inference - -[pytest] -description = pytest: simple powerful testing with Python - -[pytest-runner] -description = Invoke py.test as distutils command with dependency resolution - -[python-crfsuite] -description = Python binding for CRFsuite - -[python-dateutil] -description = Extensions to the standard Python datetime module - -[python-hdf4] -description = Python-HDF4: Python interface to the NCSA HDF4 library. - -[python-igraph] -description = High performance graph data structures and algorithms - -[python-mimeparse] -description = A module provides basic functions for parsing mime-type names and matching them against a list of media-ranges. - -[python-qwt] -description = Qt plotting widgets for Python - -[python-jsonrpc-server] -description = JSON RPC 2.0 server library - -[python-language-server] -description = Python Language Server for the Language Server Protocol - -[python-levenshtein] -description = Python extension for computing string edit distances and similarities. - -[python-multipart] -description = A streaming multipart parser for Python - -[python-snappy] -description = Python library for the snappy compression library from Google - -[pythonnet] -description = .Net and Mono integration for Python - -[pythonqwt] -description = Qt plotting widgets for Python - -[python-twitter] -description = A Python wrapper around the Twitter API - -[python-zstandard] -description = Python bindings to the Zstandard (zstd) compression library - -[pythran] -description = Ahead of Time compiler for numeric kernels - -[pythreejs] -description = Interactive 3d graphics for the Jupyter notebook, using Three.js from Jupyter interactive widgets. - -[pytools] -description = A collection of tools for Python - -[pytorch-transformers] -description = Repository of pre-trained NLP Transformer models: BERT & RoBERTa, GPT & GPT-2, Transformer-XL, XLNet and XLM - -[pytz] -description = World timezone definitions, modern and historical - -[pytzdata] -description = The Olson timezone database for Python. - -[pyutilib] -description = PyUtilib: A collection of Python utilities - -[pyvisa] -description = Python VISA bindings for GPIB, RS232, TCPIP and USB instruments - -[pyviz] -description = How to solve visualization problems with Python tools. - -[pyviz-comms] -description = Bidirectional communication for the PyViz ecosystem. - -[pywavelets] -description = PyWavelets, wavelet transform module - -[pywin32] -description = Python for Window Extensions - -[pywin32-ctypes] -description = A (partial) reimplementation of pywin32 that is pure python (uses ctypes/cffi) - -[pywinpty] -description = Python bindings for the winpty library - -[pywinusb] -description = A package that simplifies USB/HID communications on windows - -[pyyaml] -description = YAML parser and emitter for Python - -[pyzmq] -description = Python bindings for 0MQ - -[pyzo] -description = the Python IDE for scientific computing - -[py-spy] -description = A Sampling Profiler for Python - -[qdarkstyle] -description = The most complete dark stylesheet for Python and Qt applications - -[qtawesome] -description = FontAwesome icons in PyQt and PySide applications - -[qtconsole] -description = Jupyter Qt console - -[qtpy] -description = Provides an abstraction layer on top of the various Qt bindings (PyQt5, PyQt4 and PySide) and additional custom QWidgets. - -[qscintilla] -description = Python bindings for the QScintilla programmers editor widget - -[quantecon] -description = QuantEcon is a package to support all forms of quantitative economic modelling. - -[quart] -description = A Python ASGI web microframework with the same API as Flask - -[quiver-engine] -description = Interactive per-layer visualization for convents in keras - -[radon] -description = Code Metrics in Python - -[rasterio] -description = Fast and direct raster I/O for use with Numpy and SciPy - -[ray] -description = A system for parallel and distributed Python that unifies the ML ecosystem. - -[readme-renderer] -description = readme_renderer is a library for rendering "readme" descriptions for Warehouse - -[recommonmark] -description = A docutils-compatibility bridge to CommonMark, enabling you to write CommonMark inside of Docutils & Sphinx projects. - -[redis] -description = Python client for Redis key-value store - -[regex] -description = Alternative regular expression module, to replace re. - -[reportlab] -description = The Reportlab Toolkit - -[requests] -description = Python HTTP for Humans. - -[requests-file] -description = File transport adapter for Requests - -[requests-ftp] -description = FTP Transport Adapter for Requests. - -[requests-threads] -description = A Requests session that returns awaitable Twisted Deferreds instead of response objects. - -[requests-toolbelt] -description = A utility belt for advanced users of python-requests - -[requests-oauthlib] -description = OAuthlib authentication support for Requests. - -[responder] -description = A sorta familiar HTTP framework. - -[retrying] -description = Retrying - -[rfc3986] -description = Validating URI References per RFC 3986 - -[rise] -description = Reveal.js - Jupyter/IPython Slideshow Extension - -[rodeo] -description = an ide for data analysis in python - -[rope] -description = a python refactoring library... - -[rope-py3k] -description = a python refactoring library... - -[rpy2] -description = Python interface to the R language (embedded R) - -[rsa] -description = Pure-Python RSA implementation - -[rst2pdf] -description = Convert reStructured Text to PDF via ReportLab. - -[rtree] -description = R-Tree spatial index for Python GIS - -[ruamel-yaml] -description = a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order - -[ruamel-yaml-clib] -description = C version of reader, parser and emitter for ruamel.yaml derived from libyaml - -[runipy] -description = Run IPython notebooks from the command line - -[rx] -description = Reactive Extensions (Rx) for Python - -[s3fs] -description = Convenient Filesystem interface over S3 - -[s3transfer] -description = An Amazon S3 Transfer Manager - -[sasl] -description = Cyrus-SASL bindings for Python - -[schemapi] -description = schemapi: generate Python APIs from JSONSchema specifications - -[scidoc] -description = Scidoc installs scientific Python libraries documentation - -[scikits-audiolab] -description = Audio file I/O using NumPy arrays - -[scikits-timeseries] -description = Time series manipulation - -[scikit-fuzzy] -description = Fuzzy logic toolkit for SciPy - -[scikit-garden] -description = A garden of scikit-learn compatible trees - -[scikit-learn] -description = A set of python modules for machine learning and data mining -category = scientific - -[scikit-image] -description = Image processing routines for SciPy -category = improc - -[scikit-neuralnetwork] -description = Deep neural networks without the learning cliff! A wrapper library compatible with scikit-learn. - -[scikit-optimize] -description = Sequential model-based optimization toolbox. - -[scilab2py] -description = Python to Scilab bridge - -[scilab-kernel] -description = A Jupyter kernel for Scilab. - -[scipy] -description = SciPy: Scientific Library for Python - -[scrapy] -description = A high-level Python Screen Scraping framework - -[scs] -description = scs: splitting conic solver - -[seaborn] -description = seaborn: statistical data visualization - -[semantic-version] -description = A library implementing the 'SemVer' scheme. - -[send2trash] -description = Send file to trash natively under Mac OS X, Windows and Linux. - -[service-identity] -description = Service identity verification for pyOpenSSL. - -[setuptools] -description = Easily download, build, install, upgrade, and uninstall Python packages - -[setuptools-git] -description = Setuptools revision control system plugin for Git - -[sframe] -description = SFrame is an scalable, out-of-core dataframe, which allows you to work with datasets that are larger than the amount of RAM on your system. - -[sgp4] -description = Track earth satellite TLE orbits using up-to-date 2010 version of SGP4 - -[shap] -description = A unified approach to explain the output of any machine learning model. - -[shapely] -description = Geometric objects, predicates, and operations - -[shiboken2] -description = Python / C++ bindings helper module - -[simpervisor] -description = Simple async process supervisor - -[simplegeneric] -description = Simple generic functions (similar to Python's own len(), pickle.dump(), etc.) - -[simplejson] -description = Simple, fast, extensible JSON encoder/decoder for Python - -[simpy] -description = Event discrete, process based simulation for Python. - -[singledispatch] -description = This library brings functools.singledispatch from Python 3.4 to Python 2.6-3.3. - -[sip] -description = A Python bindings generator for C/C++ libraries - -[six] -description = Python 2 and 3 compatibility utilities - -[sklearn-theano] -description = Scikit-learn compatible tools using theano - -[skll] -description = SciKit-Learn Laboratory makes it easier to run machine learning experiments with scikit-learn. - -[skorch] -description = scikit-learn compatible neural network library for pytorch - -[skyfield] -description = Elegant astronomy for Python - -[smmap] -description = A pure Python implementation of a sliding window memory map manager - -[smmap2] -description = A mirror package for smmap - -[snakeviz] -description = A web-based viewer for Python profiler output - -[sniffio] -description = Sniff out which async library your code is running under - -[snowballstemmer] -description = This package provides 26 stemmers for 25 languages generated from Snowball algorithms. - -[snuggs] -description = Snuggs are s-expressions for Numpy - -[sortedcollections] -description = Python Sorted Collections - -[sortedcontainers] -description = Sorted Containers -- Sorted List, Sorted Dict, Sorted Set - -[sounddevice] -description = Play and Record Sound with Python - -[soupsieve] -description = A modern CSS selector implementation for Beautiful Soup. - -[spacy] -description = Industrial-strength Natural Language Processing (NLP) in Python - -[sparse] -description = Sparse n-dimensional arrays - -[sphinx] -description = Tool for generating documentation which uses reStructuredText as its markup language - -[sphinxcontrib-applehelp] -description = sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books - -[sphinxcontrib-devhelp] -description = sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document. - -[sphinxcontrib-htmlhelp] -description = sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files - -[sphinxcontrib-jsmath] -description = A sphinx extension which renders display math in HTML via JavaScript - -[sphinxcontrib-qthelp] -description = sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document. - -[sphinxcontrib-websupport] -description = Sphinx API for Web Apps - -[sphinxcontrib-serializinghtml] -description = sphinxcontrib-serializinghtml is a sphinx extension which outputs "serialized" HTML files (json and pickle). - -[sphinx-rtd-theme] -description = Read the Docs theme for Sphinx - -[spyder] -description = The Scientific Python Development Environment - -[spyder-kernels] -description = Jupyter kernels for Spyder's console - -[spyder-notebook] -description = Jupyter notebook integration with Spyder - -[spyder-reports] -description = Spyder-IDE plugin for Markdown reports using Pweave. - -[spyder-terminal] -description = Spyder Plugin for displaying a virtual terminal (OS independent) inside the main Spyder window - -[spyder-line-profiler] -description = Plugin for the Spyder IDE that integrates the Python line profiler. - -[spyder-memory-profiler] -description = Plugin for the Spyder IDE that integrates the Python memory profiler - -[spyder-autopep8] -description = A plugin to run the autopep8 python linter from within the spyder editor - -[sqlalchemy] -description = Database Abstraction Library - -[sqlite-bro] -description = a graphic SQLite Client in 1 Python file - -[sqlite-web] -description = Web-based SQLite database browser. - -[sqlparse] -description = Non-validating SQL parser - -[starlette] -description = The little ASGI library that shines. - -[statsmodels] -description = Statistical computations and models for Python - -[stormhttp] -description = Lightning-fast asynchronous web framework for Python 3.5+ - -[streamlite] -description = Frontend library for machine learning engineers - -[streamz] -description = Streams - -[supersmoother] -description = Python implementation of Friedman's Supersmoother - -[swifter] -description = A package which efficiently applies any function to a pandas dataframe or series in the fastest available manner - -[sympy] -description = Computer algebra system (CAS) in Python - -[tables] -description = Hierarchical datasets for Python - -[tabulate] -description = Pretty-print tabular data - -[tblib] -description = Traceback serialization library. - -[tb-nightly] -description = TensorBoard lets you watch Tensors Flow - -[tenacity] -description = Retry code until it succeeds - -[tensorboard] -description = TensorBoard lets you watch Tensors Flow - -[tensorflow] -description = TensorFlow is an open source machine learning framework for everyone. - -[tensorflow-cpu] -description = TensorFlow is an open source machine learning framework for everyone. - -[tensorflow-estimator] -description = TensorFlow Estimator. - -[tensorflow-plugin-wit] -description = What-If Tool TensorBoard plugin. - -[tensorflow-probability] -description = Probabilistic modeling and statistical inference in TensorFlow - -[tensorflow-tensorboard] -description = TensorBoard lets you watch Tensors Flow - -[termcolor] -description = ANSII Color formatting for output in terminal. - -[terminado] -description = Terminals served to xterm.js using Tornado websockets - -[terminaltables] -description = Generate simple tables in terminals from a nested list of strings. - -[testfixtures] -description = A collection of helpers and mock objects for unit tests and doc tests. - -[testpath] -description = Test utilities for code working with files and commands - -[textwrap3] -description = textwrap from Python 3.6 backport (plus a few tweaks) - -[tf-estimator-nightly] -description = TensorFlow Estimator. - -[thinc] -description = Practical Machine Learning for NLP - -[theano] -description = Optimizing compiler for evaluating mathematical expressions on CPUs and GPUs. - -[thrift] -description = Python bindings for the Apache Thrift RPC system - -[thriftpy] -description = Pure python implementation of Apache Thrift. - -[thrift-sasl] -description = Thrift SASL Python module that implements SASL transports for Thrift (`TSaslClientTransport`). - -[toml] -description = Python Library for Tom's Obvious, Minimal Language - -[toolz] -description = List processing tools and functional utilities - -[torch] -description = Tensors and Dynamic neural networks in Python with strong GPU acceleration - -[torchfile] -description = Torch7 binary serialized file parser - -[torchvision] -description = image and video datasets and models for torch deep learning - -[tornado] -description = Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. - -[tpot] -description = Tree-based Pipeline Optimization Tool - -[tqdm] -description = Fast, Extensible Progress Meter - -[traitlets] -description = Traitlets Python config system - -[traits] -description = Explicitly typed attributes for Python - -[traitsui] -description = traitsui: traits-capable user interfaces - -[traittypes] -description = Scipy trait types - -[tranquilizer] -description = Put your functions to REST - -[trio] -description = A friendly Python library for async concurrency and I/O - -[trio-asyncio] -description = A re-implementation of the asyncio mainloop on top of Trio - -[ttfquery] -description = FontTools-based package for querying system fonts - -[tweepy] -description = Twitter library for python - -[twine] -description = Collection of utilities for publishing packages on PyPI - -[twisted] -description = An asynchronous networking framework written in Python - -[twitter] -description = An API and command-line toolset for Twitter (twitter.com) - -[twython] -description = Actively maintained, pure Python wrapper for the Twitter API. Supports both normal and streaming Twitter APIs - -[typed-ast] -description = a fork of Python 2 and 3 ast modules with type comment support - -[typing] -description = Type Hints for Python - -[typing-extensions] -description = Backported and Experimental Type Hints for Python 3.5+ - -[tzlocal] -description = tzinfo object for the local timezone - -[uarray] -description = Array interface object for Python with pluggable backends and a multiple-dispatchmechanism for defining down-stream functions - -[uncertainties] -description = Transparent calculations with uncertainties on the quantities involved (aka error propagation); fast calculation of derivatives - -[uritemplate] -description = URI templates - -[urllib3] -description = HTTP library with thread-safe connection pooling, file post, and more. - -[usjon] -description = Ultra fast JSON encoder and decoder for Python - -[uvicorn] -description = The lightning-fast ASGI server. - -[uvloop] -description = Fast implementation of asyncio event loop on top of libuv - -[validators] -description = Python Data Validation for Humans™. - -[vectormath] -description = vectormath: vector math utilities for Python - -[vega] -description = A Jupyter widget for Vega 5 and Vega-Lite 4 - -[vega-datasets] -description = A Python package for offline access to Vega datasets - -[vega3] -description = Deprecated: please use vega - -[verboselogs] -description = Verbose logging level for Python's logging module - -[vispy] -description = Interactive visualization in Python - -[visdom] -description = A tool for visualizing live, rich data for Torch and Numpy - -[vitables] -description = A viewer for PyTables package - -[voila] -description = Serving read-only live Jupyter notebooks - -[voila-vuetify] -description = A vuetify template for Voila - -[vpython] -description = VPython for Jupyter Notebook - -[vtk] -description = VTK is an open-source toolkit for 3D computer graphics, image processing, and visualization - -[watchdog] -description = Filesystem events monitoring - -[wcwidth] -description = Measures number of Terminal column cells of wide-character codes - -[webencodings] -description = Character encoding aliases for legacy web content - -[websockets] -description = An implementation of the WebSocket Protocol (RFC 6455 & 7692) - -[werkzeug] -description = The comprehensive WSGI web application library. - -[wheel] -description = A built-package format for Python - -[wheelhouse-uploader] -description = Upload wheels to any cloud storage supported by Libcloud - -[whitenoise] -description = Radically simplified static file serving for WSGI applications - -[whichcraft] -description = This package provides cross-platform cross-python shutil.which functionality. - -[whoosh] -description = Fast, pure-Python full text indexing, search, and spell checking library. - -[widgetsnbextension] -description = IPython HTML widgets for Jupyter - -[winpython] -description = WinPython distribution tools, including WPPM -url = http://winpython.github.io/ - -[winrt] -description = Access Windows Runtime APIs from Python - -[win-unicode-console] -description = Enable Unicode input and display when running Python from Windows console. - -[wordcloud] -description = A little word cloud generator - -[wpca] -description = Weighted Principal Component Analysis - -[wrapt] -description = Module for decorators, wrappers and monkey patching. - -[wsgiref] -description = WSGI (PEP 333) Reference Library - -[wsproto] -description = WebSockets state-machine based protocol implementation - -[w3lib] -description = Library of web-related functions - -[xarray] -description = N-D labeled arrays and datasets in Python - -[xlrd] -description = Library for developers to extract data from Microsoft Excel (tm) spreadsheet files - -[xlsxwriter] -description = A Python module for creating Excel XLSX files. - -[xlwings] -description = Make Excel fly: Interact with Excel from Python and vice versa. - -[xlwt] -description = Library to create spreadsheet files compatible with MS Excel 97/2000/XP/2003 XLS files, on any platform, with Python 2.6, 2.7, 3.3+ - -[xnd] -description = General container that maps a wide range of Python values directly to memory. - -[xonsh] -description = Python-powered, cross-platform, Unix-gazing shell - -[xray] -description = N-D labeled arrays and datasets in Python - -[yapf] -description = A formatter for Python code. - -[yarl] -description = Yet another URL library - -[zarr] -description = An implementation of chunked, compressed, N-dimensional arrays for Python. - -[zict] -description = Mutable mapping tools - -[zipp] -description = Backport of pathlib-compatible object wrapper for zip files - -[z3-solver] -description = an efficient SMT solver library - -[umap-learn] -description = Uniform Manifold Approximation and Projection - -[tensorboard-plugin-wit] -description = What-If Tool TensorBoard plugin. - -[tbb] -description = Intel(R) Threading Building Blocks - -[geemap] -description = A Python package for interactive mapping using Google Earth Engine and ipyleaflet - -[earthengine-api] -description = Earth Engine Python API - -[ipynb-py-convert] -description = Convert .py files runnable in VSCode/Python or Atom/Hydrogen to jupyter .ipynb notebooks and vice versa - -[google-cloud-storage] -description = Google Cloud Storage API client library - -[google-auth-httplib2] -description = Google Authentication Library: httplib2 transport - -[httplib2shim] -description = A wrapper over urllib3 that matches httplib2's interface - -[google-cloud-core] -description = Google Cloud API client core library - -[google-resumable-media] -description = Utilities for Google Media Downloads and Resumable Uploads - -[google-api-core] -description = Google API client core library - -[googleapis-common-protos] -description = Common protobufs used in Google APIs - -[pipenv] -description = Python Development Workflow for Humans. - -[virtualenv-clone] -description = script to clone virtualenvs. - -[virtualenv] -description = Virtual Python Environment builder - -[distlib] -description = Distribution utilities - -[flask-sqlalchemy] -description = Adds SQLAlchemy support to your Flask application. - -[pipdeptree] -description = Command line utility to show dependency tree of packages - -[flask-smorest] -description = Flask/Marshmallow-based REST API framework - -[webargs] -description = Declarative parsing and validation of HTTP request objects, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, Pyramid, webapp2, Falcon, and aiohttp. - -[pytest-trio] -description = Pytest plugin for trio - -[poetry] -description = Python dependency management and packaging made easy. - -[tomlkit] -description = Style preserving TOML library - -[cachy] -description = Cachy provides a simple yet effective caching library. - -[cachecontrol] -description = httplib2 caching for requests - -[cleo] -description = Cleo allows you to create beautiful and testable command-line interfaces. - -[shellingham] -description = Tool to Detect Surrounding Shell - -[clikit] -description = CliKit is a group of utilities to build beautiful and testable command line interfaces. - -[lockfile] -description = Platform-independent file locking module - -[pylev] -description = A pure Python Levenshtein implementation that's not freaking GPL'd. - -[pastel] -description = Bring colors to your terminal. - -[mergedeep] -description = A deep merge function for 🐍. - -[botorch] -description = Bayesian Optimization in PyTorch - -[gpytorch] -description = An implementation of Gaussian Processes in Pytorch - -[tifffile] -description = Read and write TIFF(r) files - -[pooch] -description = Pooch manages your Python library's sample data files: it automatically downloads and stores them in a local directory, with support for versioning and corruption checks. - -[imagecodecs] -description = Image transformation, compression, and decompression codecs - -[threadpoolctl] -description = threadpoolctl - -[nlopt] -description = Library for nonlinear optimization, wrapping many algorithms for global and local, constrained or unconstrained, optimization - -[flaky] -description = Plugin for nose or pytest that automatically reruns flaky tests. - -[pytest-qt] -description = pytest support for PyQt and PySide applications - -[pytest-cov] -description = Pytest plugin for measuring coverage. - -[pytest-ordering] -description = pytest plugin to run your tests in a specific order - -[pytest-lazy-fixture] -description = It helps to use fixtures in pytest.mark.parametrize - -[pytest-faulthandler] -description = py.test plugin that activates the fault handler module for tests (dummy package) - -[pytest-mock] -description = Thin-wrapper around the mock package for easier use with pytest - -[cachelib] -description = A collection of cache libraries in the same API interface. - -[flask-session] -description = Adds server-side session support to your Flask application - -[python-dotenv] -description = Add .env support to your django/flask apps in development and deployments - -[httpie] -description = HTTPie - a CLI, cURL-like tool for humans. - -[flask-mail] -description = Flask extension for sending email - -[msvc-runtime] -description = Install the Microsoft™ Visual C++™ runtime DLLs to the sys.prefix and Scripts directories - -[python-baseconv] -description = Convert numbers from base 10 integers to base X strings and back again. - -[asgi-csrf] -description = ASGI middleware for protecting against CSRF attacks - -[jupyter-bokeh] -description = A Jupyter extension for rendering Bokeh content. - -[kaleido] -description = Static image export for web-based visualization libraries with zero dependencies - -[pyftpdlib] -description = Very fast asynchronous FTP server library - -[pysendfile] -description = A Python interface to sendfile(2) - -[onnxruntime] -description = ONNX Runtime Python bindings - -[dm-tree] -description = Tree is a library for working with nested data structures. - -[amply] -description = Amply allows you to load and manipulate AMPL/GLPK data as Python data structures - -[dask-glm] -description = Generalized Linear Models with Dask - -[wasmer] -description = Python extension to run WebAssembly binaries - -[jupyter-server-proxy] -description = Jupyter server extension to supervise and proxy web services - -[iniconfig] -description = iniconfig: brain-dead simple config-ini parsing - -[argon2-cffi] -description = The secure Argon2 password hashing algorithm. - -[jinja2-time] -description = Jinja2 Extension for Dates and Times - -[text-unidecode] -description = The most basic Text::Unidecode port - -[ujson] -description = Ultra fast JSON encoder and decoder for Python - -[scramp] -description = An implementation of the SCRAM protocol. - -[nbclassic] -description = Jupyter Notebook as a Jupyter Server Extension. - -[jupyterlab-git] -description = A server extension for JupyterLab's git extension - -[gitdb] -description = Git Object Database - -[slicer] -description = A small package for big slicing. - -[jupyterlab-widgets] -description = JupyterLab extension providing HTML widgets - -[mpl-interactions] -description = Matplotlib aware interact functions - -[httpx] -description = The next generation HTTP client. - -[httpcore] -description = A minimal low-level HTTP client. - -[typer] -description = Typer, build great CLIs. Easy to code. Based on Python type hints. - -[streamlit] -description = The fastest way to build data apps in Python - -[pyqt5-tools] -description = Tools to supplement the official PyQt5 wheels - -[ipygany] -description = Scientific Visualization in Jupyter - -[pyvista] -description = Easier Pythonic interface to VTK - -[scooby] -description = A Great Dane turned Python environment detective - -[meshio] -description = I/O for many mesh formats - -[dask-sql] -description = Dask SQL - -[jpype1] -description = A Python to Java bridge. - -[three-merge] -description = Simple library for merging two strings with respect to a base one - -[pyls-spyder] -description = Spyder extensions for the python-language-server - -[pyls-black] -description = Black plugin for the Python Language Server - -[pysocks] -description = A Python SOCKS client module. See https github.com/Anorov/PySocks for more information. - -[pyinstaller-hooks-contrib] -description = Community maintained hooks for PyInstaller - -[nbval] -description = A py.test plugin to validate Jupyter notebooks - -[jupyterlab-classic] -description = The next gen old-school Notebook UI - -[sklearn-contrib-lightning] -description = Large-scale sparse linear classification, regression and ranking in Python - -[textdistance] -description = Compute distance between the two texts. - -[siphon] -description = A collection of Python utilities for interacting with the Unidata technology stack. - -[et-xmlfile] -description = An implementation of lxml.xmlfile for the standard library - -[jdcal] -description = Julian dates from proleptic Gregorian and Julian calendars. - -[orjson] -description = Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy - -[zstandard] -description = Zstandard bindings for Python - -[wasmer-compiler-cranelift] -description = The Cranelift compiler for the `wasmer` package (to compile WebAssembly module) - -[jupyterlab-lsp] -description = Language Server Protocol integration for JupyterLab - -[jupyter-lsp] -description = Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server - -[wasmer-compiler-singlepass] -description = Python extension to run WebAssembly binaries - -[napari] -description = n-dimensional array viewer in Python - -[napari-svg] -description = A plugin for reading and writing svg files with napari - -[napari-plugin-engine] -description = napari plugin engine, fork of pluggy - -[magicgui] -description = build GUIs from functions, using magic. - -[freetype-py] -description = Freetype python bindings - -[cachey] -description = Caching mindful of computation/storage costs - -[pynndescent] -description = Nearest Neighbor Descent - -[torchaudio] -description = An audio package for PyTorch - -[napari-console] -description = A plugin that adds a console to napari - -[docstring-parser] -description = UNKNOWN - -[pendulum] -description = Python datetimes made easy. - -[toposort] -description = Implements a topological sort algorithm. - -[python-editor] -description = Programmatically open an editor, capture the result. - -[natsort] -description = Simple yet flexible natural sorting in Python. - -[grpcio-health-checking] -description = Standard Health Checking Service for gRPC - -[dagster] -description = A data orchestrator for machine learning, analytics, and ETL. - -[croniter] -description = croniter provides iteration for datetime object with cron like format - -[alembic] -description = A database migration tool for SQLAlchemy. - -[skl2onnx] -description = Convert scikit-learn models to ONNX - -[onnxconverter-common] -description = ONNX Converter and Optimization Tools - -[onnx] -description = Open Neural Network Exchange - -[graphql-ws] -description = Websocket server for GraphQL subscriptions - -[gevent] -description = Coroutine-based network library - -[gevent-websocket] -description = Websocket handler for the gevent pywsgi server, a Python network library - -[flask-sockets] -description = Elegant WebSockets for your Flask apps. - -[flask-graphql] -description = Adds GraphQL support to your Flask application - -[dagster-graphql] -description = The GraphQL frontend to python dagster. - -[dagit] -description = Web UI for dagster. - -[snowflake-connector-python] -description = Snowflake Connector for Python - -[pytimeparse] -description = Time expression parser - -[python-slugify] -description = A Python Slugify application that handles Unicode - -[pyjwt] -description = JSON Web Token implementation in Python - -[pycryptodomex] -description = Cryptographic library for Python - -[psycopg2-binary] -description = psycopg2 - Python-PostgreSQL Database Adapter - -[proto-plus] -description = Beautiful, Pythonic protocol buffers. - -[parsedatetime] -description = Parse human-readable date/time text. - -[oscrypto] -description = TLS (SSL) sockets, key generation, encryption, decryption, signing, verification and KDFs using the OS crypto libraries. Does not require a compiler, and relies on the OS for patching. Works on Windows, OS X and Linux/BSD. - -[msrest] -description = AutoRest swagger generator Python client runtime. - -[minimal-snowplow-tracker] -description = A minimal snowplow event tracker for Python. Add analytics to your Python and Django apps, webapps and games - -[logbook] -description = A logging replacement for Python - -[json-rpc] -description = JSON-RPC transport implementation - -[isodate] -description = An ISO 8601 date/time/duration parser and formatter - -[hologram] -description = JSON schema generation from dataclasses - -[google-crc32c] -description = A python wrapper of the C library 'Google CRC32C' - -[google-cloud-bigquery] -description = Google BigQuery API client library - -[dbt] -description = With dbt, data analysts and engineers can build analytics the way engineers build applications. - -[dbt-snowflake] -description = The snowflake adapter plugin for dbt (data build tool) - -[dbt-redshift] -description = The redshift adapter plugin for dbt (data build tool) - -[dbt-postgres] -description = The postgres adpter plugin for dbt (data build tool) - -[dbt-core] -description = dbt (data build tool) is a command line tool that helps analysts and engineers transform data in their warehouse more effectively - -[dbt-bigquery] -description = The bigquery adapter plugin for dbt (data build tool) - -[azure-storage-blob] -description = Microsoft Azure Blob Storage Client Library for Python - -[azure-core] -description = Microsoft Azure Core Library for Python - -[azure-common] -description = Microsoft Azure Client Library for Python (Common) - -[agate] -description = A data analysis library that is optimized for humans instead of machines. - -[nteract-scrapbook] -description = A library for recording and reading data in Jupyter and nteract Notebooks - -[jsonpointer] -description = Identify specific nodes in a JSON document (RFC 6901) - -[jsonpatch] -description = Apply JSON-Patches (RFC 6902) - -[great-expectations] -description = Always know what to expect from your data. - -[dagstermill] -description = run notebooks using the Dagster tools - -[websocket-client] -description = WebSocket client for Python. hybi13 is supported. - -[python-box] -description = Advanced Python dictionaries with dot notation access - -[prefect] -description = The Prefect Core automation and scheduling engine. - -[marshmallow-oneofschema] -description = marshmallow multiplexing schema - -[docker] -description = A Python library for the Docker Engine API. - -[pyerfa] -description = Python bindings for ERFA - -[jupyter-packaging] -description = Jupyter Packaging Utilities - -[aiomultiprocess] -description = asyncio version of the standard multiprocessing module - -[nbtutor] -description = Visualize Python code execution in Jupyter Notebook cells - -[tinycss] -description = tinycss is a complete yet simple CSS parser for Python. - -[qstylizer] -description = Stylesheet Generator for PyQt{4-5}/PySide{1-2} - -[inflection] -description = A port of Ruby on Rails inflector to Python - -[arrow] -description = Better dates & times for Python - -[quadprog] -description = Quadratic Programming Solver - -[qpsolvers] -description = Quadratic programming solvers in Python with a unified API - -[flit-core] -description = Distribution-building parts of Flit. See flit package for more information - -[swift-sim] -description = A Python/Javascript Visualiser - -[spatialmath-python] -description = Provides spatial maths capability for Python. - -[spatialgeometry] -description = A Shape and Geometry Package - -[rtb-data] -description = Data files for the Robotics Toolbox for Python. - -[roboticstoolbox-python] -description = A Python library for robotic education and research - -[pgraph-python] -description = Simple graph functionality for Python. - -[colored] -description = Simple library for color and formatting to terminal - -[ansitable] -description = Quick and easy display of tabular data and matrices with optional ANSI color and borders. - -[qdldl] -description = QDLDL, a free LDL factorization routine. - -[jupyter-server-mathjax] -description = MathJax resources as a Jupyter Server Extension. - -[voila-gridstack] -description = A GridStack template for Voila. - -[deprecation] -description = A library to handle automated deprecations - -[matplotlib-inline] -description = Inline Matplotlib backend for Jupyter - -[sqlite-utils] -description = CLI tool and Python utility functions for manipulating SQLite databases - -[py-lru-cache] -description = LRU cache for python. Provides a dictionary-like object as well as a method decorator. - -[dateparser] -description = Date parsing library designed to parse dates from HTML pages - -[datasette-graphql] -description = Datasette plugin providing an automatic GraphQL API for your SQLite databases - -[csvs-to-sqlite] -description = Convert CSV files into a SQLite database - -[readline] -description = Hack to make "pip install readline" happy and do nothing - -[python-picard] -description = Preconditoned ICA for Real Data - -[maturin] -description = Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages - -[cached-property] -description = A decorator for caching properties in classes. - -[tinycss2] -description = tinycss2 - -[slicerator] -description = A lazy-loading, fancy-sliceable iterable. - -[pims] -description = Python Image Sequence - -[flatbuffers] -description = The FlatBuffers serialization format for Python - -[dask-image] -description = Distributed image processing - -[wasabi] -description = A lightweight console printing and formatting toolkit - -[srsly] -description = Modern high-performance serialization utilities for Python - -[spacy-legacy] -description = Legacy registered functions for spaCy backwards compatibility - -[smart-open] -description = Utils for streaming large files (S3, HDFS, GCS, Azure Blob Storage, gzip, bz2...) - -[pathy] -description = pathlib.Path subclasses for local and cloud bucket storage - -[fastcore] -description = Python supercharged for fastai development - -[catalogue] -description = Super lightweight function registries for your library - -[blis] -description = The Blis BLAS-like linear algebra library, as a self-contained C-extension. - -[requests-unixsocket] -description = Use requests to talk HTTP via a UNIX domain socket - -[platformdirs] -description = A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir". - -[debugpy] -description = An implementation of the Debug Adapter Protocol for Python - -[charset-normalizer] -description = The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. - -[backports-entry-points-selectable] -description = Compatibility shim providing selectable entry points for older implementations - -[sqlite-fts4] -description = Python functions for working with SQLite FTS4 search - -[pyzstd] -description = Python bindings to Zstandard (zstd) compression library, the API is similar to Python's bz2/lzma/zlib module. - -[pypyodbc] -description = A Pure Python ctypes ODBC module - -[jupyter-dash] -description = Dash support for the Jupyter notebook interface - -[ansi2html] -description = Convert text with ANSI color codes to HTML or to LaTeX - -[tomli] -description = A lil' TOML parser - -[python-lsp-server] -description = Python Language Server for the Language Server Protocol - -[python-lsp-jsonrpc] -description = JSON RPC 2.0 server library - -[python-lsp-black] -description = Black plugin for the Python LSP Server - -[cramjam] -description = Thin Python bindings to de/compression algorithms in Rust - -[rich] -description = Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal - -[fastdownload] -description = A general purpose data downloading library. - -[dateutils] -description = Various utilities for working with date and datetime objects - -[shiboken6] -description = Python / C++ bindings helper module - -[setuptools-scm] -description = the blessed package to manage your versions by scm tags - -[pyside6] -description = Python bindings for the Qt cross-platform application and UI framework - -[jellyfish] -description = a library for doing approximate and phonetic matching of strings. - -[tomli-w] -description = A lil' TOML writer - -[frozenlist] -description = A list-like structure which implements collections.abc.MutableSequence - -[aiosignal] -description = aiosignal: a list of registered asynchronous callbacks - -[parsy] -description = easy-to-use parser combinators, for parsing in pure Python - -[argon2-cffi-bindings] -description = Low-level CFFI bindings for Argon2 - -[clr-loader] -description = Generic pure Python loader for .NET runtimes - -[cx-logging] -description = Python and C interfaces for logging - -[tzdata] -description = Provider of IANA time zone data - -[pytz-deprecation-shim] -description = Shims to make deprecation of pytz easier - -[asttokens] -description = Annotate AST trees with source code positions - -[executing] -description = Get the currently executing AST node of a frame, and other information - -[pure-eval] -description = Safely evaluate AST nodes without side effects - -[stack-data] -description = Extract data from python stack frames and tracebacks for informative displays - -[langcodes] -description = Tools for labeling human languages with IETF language tags - -[spacy-loggers] -description = Logging utilities for SpaCy - -[hpy] -description = A better C API for Python - -[doit] -description = doit - Automation Tool - -[jupyterlite] -description = tools for building JupyterLite sites - -[pyqt5-qt5] -description = The subset of a Qt installation needed by PyQt5. - -[pyqtwebengine-qt5] -description = The subset of a Qt installation needed by PyQtWebEngine. - -[superqt] -description = Missing widgets for PyQt/PySide - -[notebook-shim] -description = A shim layer for notebook traits and config - -[pygad] -description = PyGAD: A Python 3 Library for Building the Genetic Algorithm and Training Machine Learning Algoithms (Keras & PyTorch). - -[fastjsonschema] -description = Fastest Python implementation of JSON schema - -[httptools] -description = A collection of framework independent HTTP protocol utils. - -[pyside6-addons] -description = Python bindings for the Qt cross-platform application and UI framework (Addons) - -[pyside6-essentials] -description = Python bindings for the Qt cross-platform application and UI framework (Essentials) - -[importlib-resources] -description = Read resources from Python packages - -[argparse] -description = Python command-line parsing library - -[traceback2] -description = Backports of the traceback module - -[unittest2] -description = The new features in unittest backported to Python 2.4+. - -[linecache2] -description = Backports of the linecache module - -[django] -description = A high-level Python web framework that encourages rapid development and clean, pragmatic design. - -[watchgod] -description = Simple, modern file watching and code reload in python. - -[deap] -description = Distributed Evolutionary Algorithms in Python - -[backports-zoneinfo] -description = Backport of the standard library zoneinfo module - -[lief] -description = Library to instrument executable formats - -[polars] -description = Blazingly fast DataFrame library - -[xyzservices] -description = Source of XYZ tiles providers - -[filterpy] -description = Kalman filtering and optimal estimation library - -[zstd] -description = ZSTD Bindings for Python - -[pmdarima] -description = Python's forecast::auto.arima equivalent - -[pytoolconfig] -description = Python tool configuration - -[tbats] -description = BATS and TBATS for time series forecasting - -[ntlm-auth] -description = Creates NTLM authentication structures - -[requests-ntlm] -description = This package allows for HTTP NTLM authentication using the requests library. - -[sspyrs] -description = Lightweight interface for SSRS reports to python - -[xmltodict] -description = Makes working with XML feel like you are working with JSON - -[missingno] -description = Missing data visualization module for Python. - -[intel-openmp] -description = Intel OpenMP* Runtime Library - -[mkl] -description = Intel® oneAPI Math Kernel Library - -[whatthepatch] -description = A patch parsing and application library. - -[duckdb] -description = DuckDB embedded database - -[ffmpy] -description = A simple Python wrapper for ffmpeg - -[pyqt6-sip] -description = The sip module support for PyQt6 - -[pyqt6] -description = Python bindings for the Qt cross platform application toolkit - -[pyqt6-qt6] -description = The subset of a Qt installation needed by PyQt6. - -[xgboost] -description = XGBoost Python Package - -[click-default-group-wheel] -description = Extends click.Group to invoke a command without explicit subcommand name (packaged as a wheel) - -[exceptiongroup] -description = Backport of PEP 654 (exception groups) - -[linear-operator] -description = A linear operator implementation, primarily designed for finite-dimensional positive definite operators (i.e. kernel matrices). - -[waitress] -description = Waitress WSGI server - -[contourpy] -description = Python library for calculating contours of 2D quadrilateral grids - -[pylint-venv] -description = pylint-venv provides a Pylint init-hook to use the same Pylint installation with different virtual environments. - -[docstring-to-markdown] -description = On the fly conversion of Python docstrings to markdown - -[ipydatagrid] -description = Fast Datagrid widget for the Jupyter Notebook and JupyterLab - -[py2vega] -description = A Python to Vega-expression transpiler. - -[confection] -description = The sweetest config system for Python - -[python-json-logger] -description = A python library adding a json log formatter - -[jupyter-events] -description = Jupyter Event System library - -[jupyter-server-terminals] -description = A Jupyter Server Extension Providing Terminals. - -[ypy-websocket] -description = WebSocket connector for Ypy - -[jupyter-server-ydoc] -description = A Jupyter Server Extension Providing Y Documents. - -[y-py] -description = Python bindings for the Y-CRDT built from yrs (Rust) - -[jupyter-ydoc] -description = Document structures for collaborative editing using Ypy - -[fqdn] -description = Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers - -[isoduration] -description = Operations with ISO 8601 durations - -[rfc3339-validator] -description = A pure python RFC3339 validator - -[rfc3986-validator] -description = Pure python rfc3986 validator - -[uri-template] -description = RFC 6570 URI Template Processor - -[webcolors] -description = A library for working with color names and color values formats defined by HTML and CSS. - -[jupyterlab-rise] -description = RISE: "Live" Reveal.js JupyterLab Slideshow extension. - -[editables] -description = Editable installations - -[hatch] -description = Modern, extensible Python project management - -[hatchling] -description = Modern, extensible Python build backend - -[hyperlink] -description = A featureful, immutable, and correct URL for Python. - -[pyperclip] -description = A cross-platform clipboard module for Python. (Only handles plain text for now.) - -[userpath] -description = Cross-platform tool for adding locations to the user PATH - -[crashtest] -description = Manage Python errors with ease - -[dulwich] -description = Python Git Library - -[jaraco-classes] -description = Utility functions for Python class constructs - -[poetry-core] -description = Poetry PEP 517 Build Backend - -[poetry-plugin-export] -description = Poetry plugin to export the dependencies to various formats - -[rapidfuzz] -description = rapid fuzzy string matching - -[trove-classifiers] -description = Canonical source for classifiers on PyPI (pypi.org). - -[dirty-cat] -description = Machine learning with dirty categories. - -[semver] -description = Python helper for Semantic Versioning (http://semver.org/) - -[arviz] -description = Exploratory analysis of Bayesian models - -[cons] -description = An implementation of Lisp/Scheme-like cons in Python. - -[etuples] -description = Python S-expression emulation using tuple-like objects. - -[h5netcdf] -description = netCDF4 via h5py - -[logical-unification] -description = Logical unification in Python - -[minikanren] -description = Relational programming in Python - -[pytensor] -description = Optimizing compiler for evaluating mathematical expressions on CPUs and GPUs. - -[xarray-einstats] -description = Stats, linear algebra and einops for xarray - -[linkify-it-py] -description = Links recognition library with FULL unicode support. - -[markdown-it-py] -description = Python port of markdown-it. Markdown parsing, done right! - -[mdit-py-plugins] -description = Collection of plugins for markdown-it-py - -[mdurl] -description = Markdown URL utilities - -[uc-micro-py] -description = Micro subset of unicode data files for linkify-it-py projects. - -[dataclasses-json] -description = Easily serialize dataclasses to and from JSON - -[langchain] -description = Building applications with LLMs through composability - -[marshmallow-enum] -description = Enum field for Marshmallow - -[openapi-schema-pydantic] -description = OpenAPI (v3) specification schema as pydantic class - -[typing-inspect] -description = Runtime inspection utilities for typing module. - -[huggingface-hub] -description = Client library to download and publish models, datasets and other repos on the huggingface.co hub - -[tokenizers] -description = Fast and Customizable Tokenizers - -[transformers] -description = State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow - -[azure-cosmos] -description = Microsoft Azure Cosmos Client Library for Python - -[azure-identity] -description = Microsoft Azure Identity Library for Python - -[build] -description = A simple, correct Python build frontend - -[lazy-loader] -description = lazy_loader - -[msal] -description = The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of users with Microsoft Azure Active Directory accounts (AAD) and Microsoft Accounts (MSA) using industry standard OAuth2 and OpenID Connect. - -[msal-extensions] -description = Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS and Linux. Concurrent data access will be coordinated by a file lock mechanism. - -[openai] -description = Python client library for the OpenAI API - -[pyproject-hooks] -description = Wrappers to call pyproject.toml-based build backend hooks. - -[accelerate] -description = Accelerate - -[spatialpandas] -description = Pandas extension arrays for spatial/geometric operations - -[comm] -description = Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc. - -[pypng] -description = Pure Python library for saving and loading PNG images - -[pyro-api] -description = Generic API for dispatch to Pyro backends. - -[pyro-ppl] -description = A Python library for probabilistic modeling and inference - -[python-barcode] -description = Create standard barcodes with Python. No external modules needed. (optional Pillow support included). - -[qrcode] -description = QR Code image generator - -[sphinxcontrib-jquery] -description = Extension to include jQuery on newer Sphinx releases - -[interpreters-3-12] -description = Use this module to try out multiple interpreters and a per-interpreter GIL in Python 3.12. Do not use this for anything important. - -[async-lru] -description = Simple LRU cache for asyncio - -[annotated-types] -description = Reusable constraint types to use with typing.Annotated - -[daqp] -description = DAQP: A dual active-set QP solver - -[gpt4all] -description = Python bindings for GPT4All - -[llm] -description = A CLI utility and Python library for interacting with Large Language Models, including OpenAI, PaLM and local models installed on your own machine. - -[llm-gpt4all] -description = Plugin for LLM adding support for GPT4ALL models - -[llm-llama-cpp] -description = LLM plugin for running models using llama.cpp - -[llm-markov] -description = Plugin for LLM adding a Markov chain generating model - -[python-ulid] -description = Universally Unique Lexicographically Sortable Identifier - -[openai-to-sqlite] -description = Save OpenAI API results to a SQLite database - -[tiktoken] -description = tiktoken is a fast BPE tokeniser for use with OpenAI's models - -[mypyc-ipython] -description = IPython magic command interface for interactive work with mypyc. - -[installer] -description = A library for installing Python wheels. - -[langsmith] -description = Client library to connect to the LangSmith LLM Tracing and Evaluation Platform. - -[mutagen] -description = read and write audio tags for many formats - -[pydub] -description = Manipulate audio with an simple and easy high level interface - -[pypdf] -description = A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files - -[yt-dlp] -description = A youtube-dl fork with additional features and patches - -[safetensors] -description = Fast and Safe Tensor serialization - -[array-api-compat] -description = A wrapper around NumPy and other array libraries to make them compatible with the Array API standard - -[jaxtyping] -description = Type annotations and runtime checking for shape and dtype of JAX arrays, and PyTrees. - -[sqlite-migrate] -description = A simple database migration system for SQLite, based on sqlite-utils - -[typeguard] -description = Run-time type checker for Python - -[jsonschema-specifications] -description = The JSON Schema meta-schemas and vocabularies, exposed as a Registry - -[referencing] -description = JSON Referencing + Python - -[rpds-py] -description = Python bindings to Rust's persistent data structures (rpds) - -[flox] -description = GroupBy operations for dask.array - -[numbagg] -description = Fast N-dimensional aggregation functions with Numba - -[numpy-groupies] -description = Optimised tools for group-indexing operations: aggregated sum and more. - -[deepmerge] -description = a toolset to deeply merge python dictionaries. - -[ragna] -description = RAG orchestration framework - -[emoji] -description = Emoji for Python - -[huey] -description = huey, a little task queue - -[pydantic-settings] -description = Settings management using Pydantic - -[questionary] -description = Python library to build pretty command line user prompts ⭐️ - -[llm-python] -description = Run a Python interpreter in the LLM virtual environment - -[psygnal] -description = Fast python callback/event system modeled after Qt Signals - -[anywidget] -description = custom jupyter widgets made easy - -[namex] -description = A simple utility to separate the implementation of your Python package and its public API surface. - -[highspy] -description = Python interface to HiGHS - -[kornia] -description = Open Source Differentiable Computer Vision Library for PyTorch - -[lightning] -description = The Deep Learning framework to train, deploy, and ship AI products Lightning fast. - -[lightning-utilities] -description = PyTorch Lightning Sample project. - -[pysimplegui] -description = Python GUIs for Humans. - -[pytorch-lightning] -description = PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate. - -[tensorboard-data-server] -description = Fast data loading for TensorBoard - -[torchmetrics] -description = PyTorch native Metrics - -[about-time] -description = Easily measure timing and throughput of code blocks, with beautiful human friendly representations. - -[alive-progress] -description = A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations! - -[autograd] -description = Efficiently computes derivatives of numpy code. - -[clarabel] -description = Clarabel Conic Interior Point Solver for Rust / Python - -[cma] -description = CMA-ES, Covariance Matrix Adaptation Evolution Strategy for non-linear numerical optimization in Python - -[grapheme] -description = Unicode grapheme helpers - -[pymoo] -description = Multi-Objective Optimization in Python - -[ortools] -description = Google OR-Tools python libraries and modules - -[textual] -description = Modern Text User Interface framework - -[colorlog] -description = Add colours to the output of Python's logging module. - -[distro] -description = Distro - an OS platform information API - -[optuna] -description = A hyperparameter optimization framework - -[overrides] -description = A decorator to automatically detect mismatch when overriding a method. - diff --git a/winpython/data/tools.ini b/winpython/data/tools.ini deleted file mode 100644 index 0f27fc8f..00000000 --- a/winpython/data/tools.ini +++ /dev/null @@ -1,47 +0,0 @@ -[gettext] -description=GNU gettext Win32 porting - the GNU translation tool (useful tools for pygettext, a standard library module) -url=https://sourceforge.net/projects/gettext - -[julia] -description=The Julia Langage -url=https://julialang.org/ - -[mingw32] -description=C/C++ and Fortran compilers (Mingwpy static toolchain version) -url=https://github.com/numpy/numpy/wiki/Mingw-static-toolchain - -[pandoc] -description=a universal document converter -url=https://pandoc.org/ - -[r] -description=The R Project for Statistical Computing -url=https://www.r-project.org - -[scite] -description=SCIntilla based Text Editor - Multilanguage, powerful and light-weight text editor -url=http://www.scintilla.org/SciTE.html - -[tortoisehg] -description=Set of graphical tools and a shell extension for the Mercurial distributed revision control system -url=https://tortoisehg.bitbucket.io/ - -[winmerge] -description=Open Source differencing and merging tool for Windows -url=http://winmerge.org - -[nodejs] -description=a JavaScript runtime built on Chrome's V8 JavaScript engine -url=https://nodejs.org - -[npmjs] -description=a package manager for JavaScript -url=https://www.npmjs.com/ - -[yarnpkg] -description=a package manager for JavaScriptFast, reliable, and secure dependency management -url=https://yarnpkg.com/lang/en/ - -[ffmpeg] -description=a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata -url=https://ffmpeg.org diff --git a/winpython/disthelpers.py b/winpython/disthelpers.py deleted file mode 100644 index c870aa79..00000000 --- a/winpython/disthelpers.py +++ /dev/null @@ -1,907 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2009-2011 CEA -# Pierre Raybaut -# Licensed under the terms of the CECILL License -# (see guidata/__init__.py for details) - -# pylint: disable=W0613 - -""" -disthelpers ------------ - -The ``guidata.disthelpers`` module provides helper functions for Python -package distribution on Microsoft Windows platforms with ``py2exe`` or on -all platforms thanks to ``cx_Freeze``. -""" - -import sys -import os -from pathlib import Path -import shutil -import traceback -import atexit -import imp -from subprocess import Popen, PIPE -import warnings -from distutils.version import LooseVersion, StrictVersion - -# ============================================================================== -# Module, scripts, programs -# ============================================================================== -def get_module_path(modname): - """Return module *modname* base path""" - module = sys.modules.get(modname, __import__(modname)) - return str(Path(module.__file__).parent.resolve()) - - -# ============================================================================== -# Dependency management -# ============================================================================== -def get_changeset(path, rev=None): - """Return Mercurial repository *path* revision number""" - args = ['hg', 'parent'] - if rev is not None: - args += ['--rev', str(rev)] - process = Popen( - args, stdout=PIPE, stderr=PIPE, cwd=path, shell=True - ) - try: - return ( - process.stdout.read().splitlines()[0].split()[1] - ) - except IndexError: - raise RuntimeError(process.stderr.read()) - - -def prepend_module_to_path(module_path): - """ - Prepend to sys.path module located in *module_path* - Return string with module infos: name, revision, changeset - - Use this function: - 1) In your application to import local frozen copies of internal libraries - 2) In your py2exe distributed package to add a text file containing the returned string - """ - if not Path(module_path).is_dir(): - # Assuming py2exe distribution - return - sys.path.insert(0, str(Path(module_path).resolve())) - changeset = get_changeset(module_path) - name = Path(module_path).name - prefix = "Prepending module to sys.path" - message = prefix + ( - f"{name} [revision {changeset}]" - ).rjust(80 - len(prefix), ".") - print(message, file=sys.stderr) - if name in sys.modules: - sys.modules.pop(name) - nbsp = 0 - for modname in sys.modules.keys(): - if modname.startswith(name + '.'): - sys.modules.pop(modname) - nbsp += 1 - warning = f'(removed {name} from sys.modules' - if nbsp: - warning += f' and {nbsp} subpackages' - warning += ')' - print(warning.rjust(80), file=sys.stderr) - return message - - -def prepend_modules_to_path(module_base_path): - """Prepend to sys.path all modules located in *module_base_path*""" - if not Path(module_base_path).is_dir(): - # Assuming py2exe distribution - return - fnames = [ - str(Path(module_base_path) / name) - for name in os.listdir(module_base_path) - ] - messages = [ - prepend_module_to_path(dirname) - for dirname in fnames - if Path(dirname).is_dir() - ] - return os.linesep.join(messages) - - -# ============================================================================== -# Distribution helpers -# ============================================================================== -def _remove_later(fname): - """Try to remove file later (at exit)""" - - def try_to_remove(fname): - if Path(fname).exists(): - os.remove(fname) - - atexit.register(try_to_remove, str(Path(fname).resolve())) - - -def to_include_files(data_files): - """Convert data_files list to include_files list - - data_files: - * this is the ``py2exe`` data files format - * list of tuples (dest_dirname, (src_fname1, src_fname2, ...)) - - include_files: - * this is the ``cx_Freeze`` data files format - * list of tuples ((src_fname1, dst_fname1), - (src_fname2, dst_fname2), ...)) - """ - include_files = [] - for dest_dir, fnames in data_files: - for source_fname in fnames: - dest_fname = str(Path(dest_dir) / - Path(source_fname).name) - include_files.append((source_fname, dest_fname)) - return include_files - - -def strip_version(version): - """Return version number with digits only - (Windows does not support strings in version numbers)""" - return ( - version.split('beta')[0] - .split('alpha')[0] - .split('rc')[0] - .split('dev')[0] - ) - - -def remove_dir(dirname): - """Remove directory *dirname* and all its contents - Print details about the operation (progress, success/failure)""" - print(f"Removing directory '{dirname}'...", end=' ') - try: - shutil.rmtree(dirname, ignore_errors=True) - print("OK") - except Exception: - print("Failed!") - traceback.print_exc() - - -class Distribution(object): - """Distribution object - - Help creating an executable using ``py2exe`` or ``cx_Freeze`` - """ - - DEFAULT_EXCLUDES = [ - 'Tkconstants', - 'Tkinter', - 'tcl', - 'tk', - 'wx', - '_imagingtk', - 'curses', - 'PIL._imagingtk', - 'ImageTk', - 'PIL.ImageTk', - 'FixTk', - 'bsddb', - 'email', - 'pywin.debugger', - 'pywin.debugger.dbgcon', - 'matplotlib', - ] - DEFAULT_INCLUDES = [] - DEFAULT_BIN_EXCLUDES = [ - 'MSVCP100.dll', - 'MSVCP90.dll', - 'w9xpopen.exe', - 'MSVCP80.dll', - 'MSVCR80.dll', - ] - DEFAULT_BIN_INCLUDES = [] - DEFAULT_BIN_PATH_INCLUDES = [] - DEFAULT_BIN_PATH_EXCLUDES = [] - - def __init__(self): - self.name = None - self.version = None - self.description = None - self.target_name = None - self._target_dir = None - self.icon = None - self.data_files = [] - self.includes = self.DEFAULT_INCLUDES - self.excludes = self.DEFAULT_EXCLUDES - self.bin_includes = self.DEFAULT_BIN_INCLUDES - self.bin_excludes = self.DEFAULT_BIN_EXCLUDES - self.bin_path_includes = ( - self.DEFAULT_BIN_PATH_INCLUDES - ) - self.bin_path_excludes = ( - self.DEFAULT_BIN_PATH_EXCLUDES - ) - self.msvc = os.name == 'nt' - self._py2exe_is_loaded = False - self._pyqt4_added = False - self._pyside_added = False - # Attributes relative to cx_Freeze: - self.executables = [] - - @property - def target_dir(self): - """Return target directory (default: 'dist')""" - dirname = self._target_dir - if dirname is None: - return 'dist' - else: - return dirname - - @target_dir.setter # analysis:ignore - def target_dir(self, value): - self._target_dir = value - - def setup( - self, - name, - version, - description, - script, - target_name=None, - target_dir=None, - icon=None, - data_files=None, - includes=None, - excludes=None, - bin_includes=None, - bin_excludes=None, - bin_path_includes=None, - bin_path_excludes=None, - msvc=None, - ): - """Setup distribution object - - Notes: - * bin_path_excludes is specific to cx_Freeze (ignored if it's None) - * if msvc is None, it's set to True by default on Windows - platforms, False on non-Windows platforms - """ - self.name = name - self.version = ( - strip_version(version) - if os.name == 'nt' - else version - ) - self.description = description - assert Path(script).is_file() - self.script = script - self.target_name = target_name - self.target_dir = target_dir - self.icon = icon - if data_files is not None: - self.data_files += data_files - if includes is not None: - self.includes += includes - if excludes is not None: - self.excludes += excludes - if bin_includes is not None: - self.bin_includes += bin_includes - if bin_excludes is not None: - self.bin_excludes += bin_excludes - if bin_path_includes is not None: - self.bin_path_includes += bin_path_includes - if bin_path_excludes is not None: - self.bin_path_excludes += bin_path_excludes - if msvc is not None: - self.msvc = msvc - if self.msvc: - try: - pass # manage via msvc_runtime wheel (or give up anyway) - # self.data_files += create_msvc_data_files() - except IOError: - print( - "Setting the msvc option to False " - "will avoid this error", - file=sys.stderr, - ) - raise - # cx_Freeze: - self.add_executable( - self.script, self.target_name, icon=self.icon - ) - - def add_text_data_file(self, filename, contents): - """Create temporary data file *filename* with *contents* - and add it to *data_files*""" - open(filename, 'wb').write(contents) - self.data_files += [("", (filename,))] - _remove_later(filename) - - def add_data_file(self, filename, destdir=''): - self.data_files += [(destdir, (filename,))] - - # ------ Adding packages - def add_pyqt4(self): - """Include module PyQt4 to the distribution""" - if self._pyqt4_added: - return - self._pyqt4_added = True - - self.includes += [ - 'sip', - 'PyQt4.Qt', - 'PyQt4.QtSvg', - 'PyQt4.QtNetwork', - ] - - import PyQt4 - - pyqt_path = str(Path(PyQt4.__file__).parent) - - # Configuring PyQt4 - conf = os.linesep.join( - ["[Paths]", "Prefix = .", "Binaries = ."] - ) - self.add_text_data_file('qt.conf', conf) - - # Including plugins (.svg icons support, QtDesigner support, ...) - if self.msvc: - vc90man = "Microsoft.VC90.CRT.manifest" - pyqt_tmp = 'pyqt_tmp' - if Path(pyqt_tmp).is_dir(): - shutil.rmtree(pyqt_tmp) - os.mkdir(pyqt_tmp) - vc90man_pyqt = str(Path(pyqt_tmp) / vc90man) - man = ( - open(vc90man, "r") - .read() - .replace( - ' - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/winpython/make.py b/winpython/make.py new file mode 100644 index 00000000..aed6765d --- /dev/null +++ b/winpython/make.py @@ -0,0 +1,181 @@ +# -*- coding: utf-8 -*- +# make.py +# WinPython build script +# Copyright © 2012 Pierre Raybaut +# Copyright © 2014-2025+ The Winpython development team https://github.com/winpython/ +# Licensed under the terms of the MIT License +# (see wppm/__init__.py for details) + +import os +import re +import shutil +from pathlib import Path +from wppm import wppm, utils + +PORTABLE_DIRECTORY = Path(__file__).parent / "portable" +assert PORTABLE_DIRECTORY.is_dir(), f"Portable directory not found: {PORTABLE_DIRECTORY}" + +def copy_items(source_directories: list[Path], target_directory: Path, verbose: bool = False): + """Copies items from source directories to the target directory.""" + target_directory.mkdir(parents=True, exist_ok=True) + for source_dir in source_directories: + if not source_dir.is_dir(): + print(f"Warning: Source directory not found: {source_dir}") + continue + for source_item in source_dir.iterdir(): + target_item = target_directory / source_item.name + copy_function = shutil.copytree if source_item.is_dir() else shutil.copy2 + try: + copy_function(source_item, target_item) + if verbose: + print(f"Copied: {source_item} -> {target_item}") + except Exception as e: + print(f"Error copying {source_item} to {target_item}: {e}") + +def parse_list_argument(argument_value: str | list[str], separator=" ") -> list[str]: + """Parse a separated list argument into a list of strings.""" + if not argument_value: return [] + return argument_value.split(separator) if isinstance(argument_value, str) else list(argument_value) + +class WinPythonDistributionBuilder: + """Builds a WinPython distribution.""" + + def __init__(self, build_number: int, release_level: str, basedir_wpy: Path, + source_dirs: Path, tools_directories: list[Path] = None, + verbose: bool = False, flavor: str = "", + winpyver: str = "", winpyver2: str = ""): + """ + Initializes the WinPythonDistributionBuilder. + Args: + build_number: The build number (integer). + release_level: The release level (e.g., "beta", ""). + basedir_wpy: top directory of the build (c:\...\Wpy...) + source_dirs: Directory containing wheel files for packages. + tools_directories: List of directories containing development tools to include. + verbose: Enable verbose output. + flavor: WinPython flavor (e.g., "Barebone"). + """ + self.build_number = build_number + self.release_level = release_level + self.winpython_directory = Path(basedir_wpy) + self.target_directory = self.winpython_directory.parent + self.source_dirs = Path(source_dirs) + self.tools_directories = tools_directories or [] + self.verbose = verbose + self.distribution: wppm.Distribution | None = None + self.flavor = flavor + self.python_zip_file: Path = self._get_python_zip_file() + self.python_name = self.python_zip_file.stem + self.python_directory_name = "python" + self.winpyver = winpyver + self.winpyver2 = winpyver2 + + def _get_python_zip_file(self) -> Path: + """Finds the Python .zip file in the wheels directory.""" + for source_item in self.source_dirs.iterdir(): + if re.match(r"(pypy3|python-).*\.zip", source_item.name): + return source_item + raise RuntimeError(f"Could not find Python zip package in {self.source_dirs}") + + @property + def winpython_version_name(self) -> str: + """Returns the full WinPython version string.""" + return f"{self.python_full_version}.{self.build_number}{self.flavor}{self.release_level}" + + @property + def python_full_version(self) -> str: + """Retrieves the Python full version string from the distribution.""" + return utils.get_python_long_version(self.distribution.target) if self.distribution else "0.0.0" + + def _print_action(self, text: str): + """Prints an action message with progress indicator.""" + utils.print_box(text) if self.verbose else print(f"{text}...", end="", flush=True) + + def _extract_python_archive(self): + """Extracts the Python zip archive to create the base Python environment.""" + self._print_action("Extracting Python archive") + utils.extract_archive(self.python_zip_file, self.winpython_directory) + # Relocate to /python subfolder if needed (for newer structure) #2024-12-22 to /python + expected_python_directory = self.winpython_directory / self.python_directory_name + if self.python_directory_name != self.python_name and not expected_python_directory.is_dir(): + os.rename(self.winpython_directory / self.python_name, expected_python_directory) + + def _copy_essential_files(self): + """Copies pre-made objects""" + self._print_action("Copying launchers") + copy_items([PORTABLE_DIRECTORY / "launchers_final"], self.winpython_directory, self.verbose) + + tools_target_directory = self.winpython_directory / "t" + self._print_action(f"Copying tools to {tools_target_directory}") + copy_items(self.tools_directories, tools_target_directory, self.verbose) + + def _create_env_config(self): + """Creates environment setup""" + executable_name = self.distribution.short_exe if self.distribution else "python.exe" + config = { + "WINPYthon_exe": executable_name, + "WINPYthon_subdirectory_name": self.python_directory_name, + "WINPYVER": self.winpyver, # self.winpython_version_name, + "WINPYVER2": self.winpyver2, # f"{self.python_full_version}.{self.build_number}", + "WINPYFLAVOR": self.flavor, + "WINPYARCH": self.distribution.architecture if self.distribution else 64, + } + env_path = self.winpython_directory / "scripts" / "env.ini" + env_path.parent.mkdir(parents=True, exist_ok=True) + self._print_action(f"Creating env.ini environment {env_path}") + env_path.write_text("\n".join(f"{k}={v}" for k, v in config.items())) + + def build(self): + """Make or finalise WinPython distribution in the target directory""" + print(f"Building WinPython with Python archive: {self.python_zip_file.name}") + self._print_action(f"Creating WinPython {self.winpython_directory} base directory") + if self.winpython_directory.is_dir() and len(self.winpython_directory.parts)>=4: + shutil.rmtree(self.winpython_directory) + # preventive re-Creation of settings directory + (self.winpython_directory / "settings" / "AppData" / "Roaming").mkdir(parents=True, exist_ok=True) + + self._extract_python_archive() + self.distribution = wppm.Distribution(self.winpython_directory / self.python_directory_name, verbose=self.verbose) + self._copy_essential_files() + self._create_env_config() + +def make_all(build_number: int, release_level: str, basedir_wpy: Path = None, + source_dirs: Path = None, toolsdirs: str | list[Path] = None, + verbose: bool = False, flavor: str = "", + winpyver: str = "", winpyver2: str = ""): + """ + Make a WinPython distribution for a given set of parameters: + Args: + build_number: build number [int] + release_level: release level (e.g. 'beta1', '') [str] + basedir_wpy: top directory of the build (c:\...\Wpy...) + verbose: Enable verbose output (bool). + flavor: WinPython flavor (str). + source_dirs: the python.zip + toolsdirs: Directory with development tools r'D:\WinPython\basedir34\t.Slim' + """ + assert basedir_wpy is not None, "The *winpython_dirname* directory must be specified" + + tools_directories = [Path(d) for d in parse_list_argument(toolsdirs, ",")] + utils.print_box(f"Making WinPython at {basedir_wpy}") + os.makedirs(basedir_wpy, exist_ok=True) + + builder = WinPythonDistributionBuilder( + build_number, release_level, Path(basedir_wpy), + verbose=verbose, flavor=flavor, + source_dirs=source_dirs, tools_directories=tools_directories, + winpyver=winpyver, winpyver2=winpyver2) + builder.build() + +if __name__ == "__main__": + make_all( + build_number=1, + release_level="b3", + basedir_wpy=r"D:\WinPython\bd314\budot\WPy64-31401b3", + verbose=True, + flavor="dot", + source_dirs=r"D:\WinPython\bd314\packages.win-amd64", + toolsdirs=r"D:\WinPython\bd314\t.Slim", + winpyver=r"3.14.0.1dotb3", + winpyver2=r"3.14.0.1" + ) diff --git a/winpython/piptree.py b/winpython/piptree.py deleted file mode 100644 index 5a6a711a..00000000 --- a/winpython/piptree.py +++ /dev/null @@ -1,264 +0,0 @@ -# -*- coding: utf-8 -*- -import json, sys, re, platform, os, sysconfig -import re -from winpython import utils -from collections import OrderedDict -from pip._vendor.packaging.markers import Marker - - -def normalize(this): - """apply https://peps.python.org/pep-0503/#normalized-names""" - return re.sub(r"[-_.]+", "-", this).lower() - - -class pipdata: - """Wrapper around Distribution.discover() or pip inspect""" - - def __init__(self, Target=None): - - # create a distro{} dict of Packages - # key = normalised package name - # string_elements = 'name', 'version', 'summary' - # requires = list of dict with 1 level need downward - # req_key = package_key requires - # req_extra = extra branch needed of the package_key ('all' or '') - # req_version = version needed - # req_marker = marker of the requirement (if any) - # on current Python, use from importlib.metadata + Distribution.Discover() for 2x speed-up - self.distro = {} - self.raw = {} - replacements = str.maketrans({" ": "", "[": "", "]": "", "'": "", '"': ""}) - self.environment = { - "implementation_name": sys.implementation.name, - "implementation_version": "{0.major}.{0.minor}.{0.micro}".format( - sys.implementation.version - ), - "os_name": os.name, - "platform_machine": platform.machine(), - "platform_release": platform.release(), - "platform_system": platform.system(), - "platform_version": platform.version(), - "python_full_version": platform.python_version(), - "platform_python_implementation": platform.python_implementation(), - "python_version": ".".join(platform.python_version_tuple()[:2]), - "sys_platform": sys.platform, - } - - # get pip_inpsect raw data in json form - if Target == None or sys.executable==Target: - # self-Distro inspection case - # faster then pip_inspect = utils.exec_shell_cmd(f'set pythonutf8=1 & python -X utf8=1 -m pip inspect', sys.prefix) - from importlib.metadata import Distribution - pip_json_installed=Distribution.discover() - for p in pip_json_installed: - meta = p.metadata - name = p.name - version = p.version - key = normalize(name) - requires = [] - self.raw[key] = meta - if p.requires: - for i in p.requires: - det = (i + ";").split(";") - - # req_nameextra is "python-jose[cryptography]" - # from fastapi "python-jose[cryptography]<4.0.0,>=3.3.0 - # req_nameextra is "google-cloud-storage" - # from "google-cloud-storage (<2.0.0,>=1.26.0) - req_nameextra = re.split(" |;|==|!|>|<", det[0] + ";")[0] - req_nameextra = normalize(req_nameextra) - req_key = normalize((req_nameextra + "[").split("[")[0]) - req_key_extra = req_nameextra[len(req_key) + 1 :].split("]")[0] - req_version = det[0][len(req_nameextra) :].translate(replacements) - req_marker = det[1] - - req_add = { - "req_key": req_key, - "req_version": req_version, - "req_extra": req_key_extra, - } - # add the marker of the requirement, if not nothing: - if not req_marker == "": - req_add["req_marker"] = req_marker - requires += [req_add] - self.distro[key] = { - "name": name, - "version": p.version, - "summary": meta["Summary"] if "Summary" in meta else "", - "requires_dist": requires, - "wanted_per": [], - "description": meta["Description"] if "Description" in meta else "", - } - else: - # General Any Distro inspection case - # unreliable to utf-8: pip_inspect = utils.exec_run_cmd([Target , "-X" ,"utf8=1", "-m", "pip", "inspect"]) - # os.environ["pythonutf8"] = "1" causes issues in movable function, so limit to this moment - pip_inspect = utils.exec_shell_cmd(f'set pythonutf8=1 & "{Target}" -X utf8=1 -m pip inspect', sys.prefix) - pip_json = json.loads(pip_inspect) - - - for p in pip_json["installed"]: - meta = p["metadata"] - name = meta["name"] - key = normalize(name) - requires = [] - self.raw[key] = meta - if "requires_dist" in meta: - for i in meta["requires_dist"]: - det = (i + ";").split(";") - - # req_nameextra is "python-jose[cryptography]" - # from fastapi "python-jose[cryptography]<4.0.0,>=3.3.0 - # req_nameextra is "google-cloud-storage" - # from "google-cloud-storage (<2.0.0,>=1.26.0) - req_nameextra = re.split(" |;|==|!|>|<", det[0] + ";")[0] - req_nameextra = normalize(req_nameextra) - req_key = normalize((req_nameextra + "[").split("[")[0]) - req_key_extra = req_nameextra[len(req_key) + 1 :].split("]")[0] - req_version = det[0][len(req_nameextra) :].translate(replacements) - req_marker = det[1] - - req_add = { - "req_key": req_key, - "req_version": req_version, - "req_extra": req_key_extra, - } - # add the marker of the requirement, if not nothing: - if not req_marker == "": - req_add["req_marker"] = req_marker - requires += [req_add] - self.distro[key] = { - "name": name, - "version": meta["version"], - "summary": meta["summary"] if "summary" in meta else "", - "requires_dist": requires, - "wanted_per": [], - "description": meta["description"] if "description" in meta else "", - } - # On a second pass, complement distro in reverse mode with 'wanted-per': - # - get all downward links in 'requires_dist' of each package - # - feed the required packages 'wanted_per' as a reverse dict of dict - # contains = - # req_key = upstream package_key - # req_version = downstream package version wanted - # req_marker = marker of the downstream package requirement (if any) - - for p in self.distro: - for r in self.distro[p]["requires_dist"]: - if r["req_key"] in self.distro: - want_add = { - "req_key": p, - "req_version": r["req_version"], - "req_extra": r["req_extra"], - } # req_key_extra - if "req_marker" in r: - want_add["req_marker"] = r["req_marker"] # req_key_extra - self.distro[r["req_key"]]["wanted_per"] += [want_add] - - def _downraw(self, pp, extra="", version_req="", depth=20, path=[], verbose=False): - """build a nested list of needed packages with given extra and depth""" - envi = {"extra": extra, **self.environment} - p = normalize(pp) - - # several extras request management: example dask[array,diagnostics] - extras = extra.split(",") - - ret_all = [] - if p+"["+extra+"]" in path: # for dask[complete]->dask[array,test,..] - print("cycle!", "->".join(path + [p])) - elif p in self.distro and len(path) <= depth: - for extra in extras: # several extras request management - envi = {"extra": extra, **self.environment} - summary = f' {self.distro[p]["summary"]}' if verbose else '' - if extra == "": - ret = [f'{p}=={self.distro[p]["version"]} {version_req}{summary}'] - else: - ret = [f'{p}[{extra}]=={self.distro[p]["version"]} {version_req}{summary}'] - for r in self.distro[p]["requires_dist"]: - if r["req_key"] in self.distro: - if "req_marker" not in r or Marker(r["req_marker"]).evaluate( - environment=envi - ): - ret += self._downraw( - r["req_key"], - r["req_extra"], - r["req_version"], - depth, - path + [p+"["+extra+"]"], - verbose=verbose, - ) - ret_all += [ret] - return ret_all - - def _upraw(self, pp, extra="", version_req="", depth=20, path=[], verbose=False): - """build a nested list of user packages with given extra and depth""" - envi = {"extra": extra, **self.environment} - p = normalize(pp) - ret_all = [] - if p in path: - print("cycle!", "->".join(path + [p])) - elif p in self.distro and len(path) <= depth: - summary = f' {self.distro[p]["summary"]}' if verbose else '' - if extra == "": - ret_all = [f'{p}=={self.distro[p]["version"]} {version_req}{summary}'] - else: - ret_all = [f'{p}[{extra}]=={self.distro[p]["version"]} {version_req}{summary}'] - ret = [] - for r in self.distro[p]["wanted_per"]: - if r["req_key"] in self.distro and r["req_key"] not in path: - if "req_marker" not in r or Marker(r["req_marker"]).evaluate( - environment=envi - ): - ret += self._upraw( - r["req_key"], - "", - f"[requires: {p}" - + ( - "[" + r["req_extra"] + "]" - if r["req_extra"] != "" - else "" - ) - + f'{r["req_version"]}]', - depth, - path + [p], - verbose=verbose, - ) - if not ret == []: - ret_all += [ret] - return ret_all - - def down(self, pp="", extra="", depth=99, indent=5, version_req="", verbose=False): - """print the downward requirements for the package or all packages""" - if not pp == "": - rawtext = json.dumps( - self._downraw(pp, extra, version_req, depth, verbose=verbose), indent=indent - ) - lines = [l for l in rawtext.split("\n") if len(l.strip()) > 2] - print("\n".join(lines).replace('"', "")) - else: - for one_pp in sorted(self.distro): - self.down(one_pp, extra, depth, indent, version_req, verbose=verbose) - - def up(self, pp, extra="", depth=99, indent=5, version_req="", verbose=False): - """print the upward needs for the package""" - rawtext = json.dumps(self._upraw(pp, extra, version_req, depth, verbose=verbose), indent=indent) - lines = [l for l in rawtext.split("\n") if len(l.strip()) > 2] - print("\n".join(lines).replace('"', "")) - - def description(self, pp): - "return description of the package" - if pp in self.distro: - return print("\n".join(self.distro[pp]["description"].split(r"\n"))) - - def summary(self, pp): - "return summary of the package" - if pp in self.distro: - return self.distro[pp]["summary"] - - def pip_list(self, full=False): - """do like pip list""" - if full: - return [(p, self.distro[p]["version"], self.distro[p]["summary"]) for p in sorted(self.distro)] - else: - return [(p, self.distro[p]["version"]) for p in sorted(self.distro)] - diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dot.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dot.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dot.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb3.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb3.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb4.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb4.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0dotb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slim.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slim.toml new file mode 100644 index 00000000..eb19fcd9 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slim.toml @@ -0,0 +1,5590 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.17.0" + +[[packages.wheels]] +name = "cohere-5.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/21/d0eb7c8e5b3bb748190c59819928c38cafcdf8f8aaca9d21074c64cf1cae/cohere-5.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe7d8228cda5335a7db79a828893765a4d5a40b7f7a43443736f339dc7813fa4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.0" + +[[packages.wheels]] +name = "duckdb-1.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/b2/98fb89ae81611855f35984e96f648d871f3967bb3f524b51d1372d052f0c/duckdb-1.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.116.1" + +[[packages.wheels]] +name = "fastapi-0.116.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/47/d63c60f59a59467fda0f93f46335c9d18526d7071f025cb5b89d5353ea42/fastapi-0.116.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.21.0" + +[[packages.wheels]] +name = "holoviews-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/75/d451b9a0ab3a9c0b2c7d1d3cf0bcf797ccac420f3479476f9867e1737d39/holoviews-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.136.6" + +[[packages.wheels]] +name = "hypothesis-6.136.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/e2/7fd1a9b12740b3472349f7e3c216e94b1b2e03d32c9d842284b57eb5a3f8/hypothesis-6.136.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.7" + +[[packages.wheels]] +name = "jupyterlab-4.4.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/01/44f35124896dd5c73b26705c25bb8af2089895b32f057a1e4a3488847333/jupyterlab-4.4.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "808bae6136b507a4d18f04254218bfe71ed8ba399a36ef3280d5f259e69abf80" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.16" + +[[packages.wheels]] +name = "langsmith-0.4.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/ed/7a48189bdad850cfd47df671204c31779dd190de6bc681f169d4535f852e/langsmith-0.4.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.45.0" + +[[packages.wheels]] +name = "llvmlite-0.45.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/16/bac6a35ae77d6f881d2c6b54cbb2df2b07e030e1a66da8041359d09b0d87/llvmlite-0.45.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f68890ceb662e874933103e91e239389ff7275c4befba8e43ccd46ae3231b89e" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.8.2" + +[[packages.wheels]] +name = "markdown-3.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.1.0" + +[[packages.wheels]] +name = "markdownify-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/11/b751af7ad41b254a802cf52f7bc1fca7cabe2388132f2ce60a1a6b9b9622/markdownify-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.3" + +[[packages.wheels]] +name = "maturin-1.9.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/59/42c83e3234a57b6132b2a875137818aabe79ec3621f08320ff52798fd352/maturin-1.9.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.0" + +[[packages.wheels]] +name = "numba-0.62.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/a2/3a9eb747d77693054504540e9da0640c169dd97e3e268c1150bf55a22b97/numba-0.62.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "591a9c485904f219a129b0493f89d27de24286fb66dd5a577b11edc62fc78db4" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.107.2" + +[[packages.wheels]] +name = "openai-1.107.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/65/e51a77a368eed7b9cc22ce394087ab43f13fa2884724729b716adf2da389/openai-1.107.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.2" + +[[packages.wheels]] +name = "pandas-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/3c/f2af1ce8840ef648584a6156489636b5692c162771918aa95707c165ad2b/pandas-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.0" + +[[packages.wheels]] +name = "panel-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/67/6d00d01f524ac0c34f394a1eacae481378cfb7bfd2d7d124f13873506ddc/panel-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ff5464babbb11173ea2b1124bf287f972bb4addea1bf1eea491eca5f07931fbc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.33.1" + +[[packages.wheels]] +name = "polars-1.33.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/a6/dc535da476c93b2efac619e04ab81081e004e4b4553352cd10e0d33a015d/polars-1.33.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c9781c704432a2276a185ee25898aa427f39a904fbe8fde4ae779596cdbd7a9e" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.0.0" + +[[packages.wheels]] +name = "pyzmq-27.0.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9b/12/52da5509800f7ff2d287b2f2b4e636e7ea0f001181cba6964ff6c1537778/pyzmq-27.0.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.1" + +[[packages.wheels]] +name = "skrub-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/71/06d2893916010ce08ca51b87ed01b8c4d42b8c9098e05b7570db68aa223a/skrub-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2badb4e84cdc64820f170135fab404883e282c94ddc7e6177015b3136e8855ca" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.7" + +[[packages.wheels]] +name = "soupsieve-2.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.8" + +[[packages.wheels]] +name = "spyder-6.0.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/a4/c6d8b5d6793687dfddca051fafbb0632bee8c5dce6007c830841b97d4250/spyder-6.0.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf7778e5d8271eabee1bd2764735b22d233afe01a50aee95f0afdf4d789dba05" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.24.0" + +[[packages.wheels]] +name = "zstandard-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/03/ab8b82ae5eb49eca4d3662705399c44442666cc1ce45f44f2d263bb1ae31/zstandard-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb3.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb3.toml new file mode 100644 index 00000000..51734fb3 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb3.toml @@ -0,0 +1,5568 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.16.1" + +[[packages.wheels]] +name = "cohere-5.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c6/72309ac75f3567425ca31a601ad394bfee8d0f4a1569dfbc80cbb2890d07/cohere-5.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.6.5" + +[[packages.wheels]] +name = "cvxpy-1.6.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/3c/86682ec2b72f72e46e359903d7c18686e5314aa4baa96c77f6595c58fb03/cvxpy-1.6.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.2" + +[[packages.wheels]] +name = "cython-3.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c2/94/65ba40faeafe74845ba22b61aff7d73475671c3bd24bffc6cba53f3b0063/cython-3.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ab1319c77f15b0ae04b3fb03588df3afdec4cf79e90eeea5c961e0ebd8fdf72" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.1" + +[[packages.wheels]] +name = "datashader-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/3d/f783a19cedbd5e146543775404d6976ca2162fec53ccbba5ffd8da68bd9a/datashader-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5585af146e83af51c61d49168a741a6280a482072572e16573af1e5c6b600f8a" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.1" + +[[packages.wheels]] +name = "django-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/92/7448697b5838b3a1c6e1d2d6a673e908d0398e84dc4f803a2ce11e7ffc0f/django-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9b680e84f9a0e71da83e399f1e922e1ab37b2173ced046b541c72e1589a5961" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ab/e9/f83285b0cb3729f24321a038f272490dfb76ca531b7cef832037b7bd077c/duckdb-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.3.0" + +[[packages.wheels]] +name = "faker-37.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/99/045b2dae19a01b9fbb23b9971bc04f4ef808e7f3a213d08c81067304a210/faker-37.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c94daa16a432f2d2bc803c7ff602509699fca228d13e97e379cd860a7e216e" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.115.12" + +[[packages.wheels]] +name = "fastapi-0.115.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/b3/b51f09c2ba432a576fe63758bddc81f78f0c6309d9e5c10d194313bf021e/fastapi-0.115.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.20.0" + +[[packages.wheels]] +name = "google_genai-1.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/b4/08f3ea414060a7e7d4436c08bb22d03dabef74cc05ef13ef8cd846156d5b/google_genai-1.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.20.2" + +[[packages.wheels]] +name = "holoviews-1.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/67/066a1d984fa259ad7300084a70789579e104afd75fc58a1d44cda9c365d5/holoviews-1.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.135.4" + +[[packages.wheels]] +name = "hypothesis-6.135.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/d4/25b3a9f35199eb1904967ca3e6db4afd636911fa39695760b0afac84f38a/hypothesis-6.135.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a3b13ce35d43e14aaf6a6ca4cc411e5342be5d05b77977499d07cf6a61e6e71" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.1" + +[[packages.wheels]] +name = "joblib-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7d/4f/1195bbac8e0c2acc5f740661631d8d750dc38d4a32b23ee5df3cde6f4e0d/joblib-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.4" + +[[packages.wheels]] +name = "jupyterlab-4.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/82/66910ce0995dbfdb33609f41c99fe32ce483b9624a3e7d672af14ff63b9f/jupyterlab-4.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "711611e4f59851152eb93316c3547c3ec6291f16bb455f1f4fa380d25637e0dd" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/dc/c1abe38c37c071d0fc71c9a474fd0b9ede05d42f5a458d584619cfd2371a/kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.8" + +[[packages.wheels]] +name = "langsmith-0.4.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/4f/481324462c44ce21443b833ad73ee51117031d41c16fec06cddbb7495b26/langsmith-0.4.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca2f6024ab9d2cd4d091b2e5b58a5d2cb0c354a0c84fe214145a89ad450abae0" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.44.0" + +[[packages.wheels]] +name = "llvmlite-0.44.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/81/e66fc86539293282fd9cb7c9417438e897f369e79ffb62e1ae5e5154d4dd/llvmlite-0.44.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.7" + +[[packages.wheels]] +name = "Markdown-3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/08/83871f3c50fc983b88547c196d11cf8c3340e37c32d2e9d6152abe2c61f7/Markdown-3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.1.0" + +[[packages.wheels]] +name = "markdownify-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/11/b751af7ad41b254a802cf52f7bc1fca7cabe2388132f2ce60a1a6b9b9622/markdownify-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.5" + +[[packages.wheels]] +name = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/c2/24302e93ff431b8f4173ee1dd88976c8d80483cadbc5d3d777cef47b3a1c/matplotlib-3.10.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.0" + +[[packages.wheels]] +name = "maturin-1.9.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0e/44/b3236b2a3f6d26600cb3c81535c06c80fd80cbcdcf893648d8bb8660edbe/maturin-1.9.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fb9796c1893d1e3cd9da9325ef3c63d54a5b0fe6183ddae4954b10c64a1ae5e3" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.9.3" + +[[packages.wheels]] +name = "mcp-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/45/823ad05504bea55cb0feb7470387f151252127ad5c72f8882e8fe6cf5c0e/mcp-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.4.4" + +[[packages.wheels]] +name = "multidict-6.4.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/7a/cfe1a47632be861b627f46f642c1d031704cc1c0f5c0efbde2ad44aa34bd/multidict-6.4.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.16.1" + +[[packages.wheels]] +name = "mypy-1.16.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5a/fd/d486a0827a1c597b3b48b1bdef47228a6e9ee8102ab8c28f944cb83b65dc/mypy-1.16.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.0.1" + +[[packages.wheels]] +name = "narwhals-2.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/26/43caf834e47c63883a5eddc02893b7fdbe6a0a4508ff6dc401907f3cc085/narwhals-2.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.2" + +[[packages.wheels]] +name = "notebook-7.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/16/d3c36a0b1f6dfcf218add8eaf803bf0473ff50681ac4d51acb7ba02bce34/notebook-7.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.61.2" + +[[packages.wheels]] +name = "numba-0.61.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/a4/6d3a0f2d3989e62a18749e1e9913d5fa4910bbb3e3311a035baea6caf26d/numba-0.61.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7" + +[[packages]] +name = "numpy" +version = "2.2.6" + +[[packages.wheels]] +name = "numpy-2.2.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/3b/d58c12eafcb298d4e6d0d40216866ab15f59e55d148a5658bb3132311fcf/numpy-2.2.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.101.0" + +[[packages.wheels]] +name = "openai-1.101.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/a6/0e39baa335bbd1c66c7e0a41dbbec10c5a15ab95c1344e7f7beb28eee65a/openai-1.101.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.1" + +[[packages.wheels]] +name = "pandas-2.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.6.3" + +[[packages.wheels]] +name = "panel-1.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/fe/d01b6eae59933d56c345e57cdde5ffe379b7b1f56d192782ab8071249f73/panel-1.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.0" + +[[packages.wheels]] +name = "param-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/370a6636e072a037b52499edd8928942df7f887974fc54444ece5152d26a/param-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.2.0" + +[[packages.wheels]] +name = "plotly-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/20/f2b7ac96a91cc5f70d81320adad24cc41bf52013508d649b1481db225780/plotly-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.4" + +[[packages.wheels]] +name = "plotpy-2.7.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/98/9bc8f5a00dd45b53c37292c08ebcf9f94e895838ab2ad295d1c0eec88332/plotpy-2.7.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.32.2" + +[[packages.wheels]] +name = "polars-1.32.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/58/d2840554ef1c69e06a28ee928bdaa0d6a61af12205ff24c096628f217f99/polars-1.32.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5e1660a584e89e1d60cd89984feca38a695e491a966581fefe8be99c230ea154" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.30.2" + +[[packages.wheels]] +name = "protobuf-6.30.2-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/e9/7b9f1b259d509aef2b833c29a1f3c39185e2bf21c9c1be1cd11c22cb2149/protobuf-6.30.2-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.12.0" + +[[packages.wheels]] +name = "psygnal-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/ae/a3d6815db583b6d05878b3647ea0e2aa21ce6941d03c9d2c6caad1afbcf6/psygnal-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7" + +[[packages]] +name = "ptpython" +version = "3.0.30" + +[[packages.wheels]] +name = "ptpython-3.0.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/15/77dfd9a52fa6c87b50232b246df0cfacacc0665c95ebe4a517cc994819f0/ptpython-3.0.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.10.1" + +[[packages.wheels]] +name = "pymongo-4.10.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/2a/7c24a6144eaa06d18ed52822ea2b0f119fd9267cd1abbb75dae4d89a3803/pymongo-4.10.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.3.5" + +[[packages.wheels]] +name = "pytest-8.3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "26.4.0" + +[[packages.wheels]] +name = "pyzmq-26.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c6/6c/f289c1789d7bb6e5a3b3bef7b2a55089b8561d17132be7d960d3ff33b14e/pyzmq-26.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/12/09e048d1814195e01f354155fb772fb0854bd3450b5f5a82224b3a319f0e/rpds_py-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.1" + +[[packages.wheels]] +name = "scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/47/9291cfa1db1dae9880420d1e07dbc7e8dd4a7cdbc42eaba22512e6bde958/scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11" + +[[packages]] +name = "scipy" +version = "1.16.0" + +[[packages.wheels]] +name = "scipy-1.16.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/a7/4c94bbe91f12126b8bf6709b2471900577b7373a4fd1f431f28ba6f81115/scipy-1.16.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79a3c13d43c95aa80b87328a46031cf52508cf5f4df2767602c984ed1d3c6bbe" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/f9/840ef19a298ef7099f4a692772001f2f552b0917a3fb230f872a1c40ba11/scs-3.2.7.post2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.19.3" + +[[packages.wheels]] +name = "simplejson-3.19.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/58/b06226e6b0612f2b1fa13d5273551da259f894566b1eef32249ddfdcce44/simplejson-3.19.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.0" + +[[packages.wheels]] +name = "skrub-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/c3/33087009e113b247a2ee58ff3a2a93c51d43cc4f0a3400f6fdb11deea6dc/skrub-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "2.2.0" + +[[packages.wheels]] +name = "snowballstemmer-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/dc/c02e01294f7265e63a7315fe086dd1df7dacb9f840a804da846b96d01b96/snowballstemmer-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.6" + +[[packages.wheels]] +name = "soupsieve-2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9" + +[[packages]] +name = "sphinx" +version = "8.1.3" + +[[packages.wheels]] +name = "sphinx-8.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/26/60/1ddff83a56d33aaf6f10ec8ce84b4c007d9368b21008876fceda7e7381ef/sphinx-8.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "2.4.1" + +[[packages.wheels]] +name = "sse_starlette-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e4/f1/6c7eaa8187ba789a6dd6d74430307478d2a91c23a5452ab339b6fbe15a08/sse_starlette-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08b77ea898ab1a13a428b2b6f73cfe6d0e607a7b4e15b9bb23e4a37b087fd39a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.46.2" + +[[packages.wheels]] +name = "starlette-0.46.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35" + +[[packages]] +name = "statsmodels" +version = "0.14.4" + +[[packages.wheels]] +name = "statsmodels-0.14.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1d/eb/cb8b01f5edf8f135eb3d0553d159db113a35b2948d0e51eeb735e7ae09ea/statsmodels-0.14.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0" + +[[packages]] +name = "streamlit" +version = "1.46.1" + +[[packages.wheels]] +name = "streamlit-1.46.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/3b/35400175788cdd6a43c90dce1e7f567eb6843a3ba0612508c0f19ee31f5f/streamlit-1.46.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.1" + +[[packages.wheels]] +name = "tornado-6.5.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/09/6526e32bf1049ee7de3bebba81572673b19a2a8541f795d887e92af1a8bc/tornado-6.5.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "14.2" + +[[packages.wheels]] +name = "websockets-14.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/13/8b7fc4cb551b9cfd9890f0fd66e53c18a06240319915533b033a56a3d520/websockets-14.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/21/abdedb4cdf6ff41ebf01a74087740a709e2edb146490e4d9beea054b0b7a/wrapt-1.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.7.1" + +[[packages.wheels]] +name = "xarray-2025.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/ea/9554e5fb78eda4dbc9e9ccaf23034166fe3e9ea9af82ea6204b9578434bc/xarray-2025.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.23.0" + +[[packages.wheels]] +name = "zstandard-0.23.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a2/bf/c6aaba098e2d04781e8f4f7c0ba3c7aa73d00e4c436bcc0cf059a66691d1/zstandard-0.23.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb4.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb4.toml new file mode 100644 index 00000000..885c30a5 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0slimb4.toml @@ -0,0 +1,5579 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.16.1" + +[[packages.wheels]] +name = "cohere-5.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c6/72309ac75f3567425ca31a601ad394bfee8d0f4a1569dfbc80cbb2890d07/cohere-5.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.6.5" + +[[packages.wheels]] +name = "cvxpy-1.6.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/3c/86682ec2b72f72e46e359903d7c18686e5314aa4baa96c77f6595c58fb03/cvxpy-1.6.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.3" + +[[packages.wheels]] +name = "cython-3.1.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/09/100c0727d0fc8e4d7134c44c12b8c623e40f309401af56b7f6faf795c4bb/cython-3.1.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00264cafcc451dcefc01eaf29ed5ec150fb73af21d4d21105d97e9d829a53e99" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.1" + +[[packages.wheels]] +name = "datashader-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/3d/f783a19cedbd5e146543775404d6976ca2162fec53ccbba5ffd8da68bd9a/datashader-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5585af146e83af51c61d49168a741a6280a482072572e16573af1e5c6b600f8a" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ab/e9/f83285b0cb3729f24321a038f272490dfb76ca531b7cef832037b7bd077c/duckdb-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.116.1" + +[[packages.wheels]] +name = "fastapi-0.116.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/47/d63c60f59a59467fda0f93f46335c9d18526d7071f025cb5b89d5353ea42/fastapi-0.116.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.20.0" + +[[packages.wheels]] +name = "google_genai-1.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/b4/08f3ea414060a7e7d4436c08bb22d03dabef74cc05ef13ef8cd846156d5b/google_genai-1.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.21.0" + +[[packages.wheels]] +name = "holoviews-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/75/d451b9a0ab3a9c0b2c7d1d3cf0bcf797ccac420f3479476f9867e1737d39/holoviews-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.136.6" + +[[packages.wheels]] +name = "hypothesis-6.136.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/e2/7fd1a9b12740b3472349f7e3c216e94b1b2e03d32c9d842284b57eb5a3f8/hypothesis-6.136.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.1" + +[[packages.wheels]] +name = "joblib-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7d/4f/1195bbac8e0c2acc5f740661631d8d750dc38d4a32b23ee5df3cde6f4e0d/joblib-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.5" + +[[packages.wheels]] +name = "jupyterlab-4.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/74/e144ce85b34414e44b14c1f6bf2e3bfe17964c8e5670ebdc7629f2e53672/jupyterlab-4.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e76244cceb2d1fb4a99341f3edc866f2a13a9e14c50368d730d75d8017be0863" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/dc/c1abe38c37c071d0fc71c9a474fd0b9ede05d42f5a458d584619cfd2371a/kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.16" + +[[packages.wheels]] +name = "langsmith-0.4.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/ed/7a48189bdad850cfd47df671204c31779dd190de6bc681f169d4535f852e/langsmith-0.4.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.45.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.45.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e8/56/895fe4c7fc30a899941a8dcee2f1e81c08a7450f65d11a1c60cedae8e203/llvmlite-0.45.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7d763966615bff2ed47b8aff335c7cf8c62851e4676fff353225b2b36aeab5cd" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.8.2" + +[[packages.wheels]] +name = "markdown-3.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.1.0" + +[[packages.wheels]] +name = "markdownify-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/11/b751af7ad41b254a802cf52f7bc1fca7cabe2388132f2ce60a1a6b9b9622/markdownify-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.5" + +[[packages.wheels]] +name = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/c2/24302e93ff431b8f4173ee1dd88976c8d80483cadbc5d3d777cef47b3a1c/matplotlib-3.10.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.3" + +[[packages.wheels]] +name = "maturin-1.9.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/59/42c83e3234a57b6132b2a875137818aabe79ec3621f08320ff52798fd352/maturin-1.9.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.4.4" + +[[packages.wheels]] +name = "multidict-6.4.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/7a/cfe1a47632be861b627f46f642c1d031704cc1c0f5c0efbde2ad44aa34bd/multidict-6.4.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.0.1" + +[[packages.wheels]] +name = "narwhals-2.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/26/43caf834e47c63883a5eddc02893b7fdbe6a0a4508ff6dc401907f3cc085/narwhals-2.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.4" + +[[packages.wheels]] +name = "notebook-7.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/c0/e64d2047fd752249b0b69f6aee2a7049eb94e7273e5baabc8b8ad05cc068/notebook-7.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32840f7f777b6bff79bb101159336e9b332bdbfba1495b8739e34d1d65cbc1c0" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.0rc1" + +[[packages.wheels]] +name = "numba-0.62.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/27/5fbac05052484ecd0712fa9db869bfa6811c2f94df6c33a9e9074d448b08/numba-0.62.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c4c254119723e707b9ab64b3a2d26d44c52560d928db8339001f78df1f1db875" + +[[packages]] +name = "numpy" +version = "2.3.2" + +[[packages.wheels]] +name = "numpy-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/aa/6f/a428fd1cb7ed39b4280d057720fed5121b0d7754fd2a9768640160f5517b/numpy-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c63d95dc9d67b676e9108fe0d2182987ccb0f11933c1e8959f42fa0da8d4fa56" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.101.0" + +[[packages.wheels]] +name = "openai-1.101.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/a6/0e39baa335bbd1c66c7e0a41dbbec10c5a15ab95c1344e7f7beb28eee65a/openai-1.101.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.1" + +[[packages.wheels]] +name = "pandas-2.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.7.5" + +[[packages.wheels]] +name = "panel-1.7.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/12/2d9700ddd550962e099d15ad94e6f7249bdf4402445b0004bcea49a00474/panel-1.7.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c3b4a335d56d5aa0cf5d6e1c3684a297e24a62cf99345c5e9eb8552837b97c3" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.2.0" + +[[packages.wheels]] +name = "plotly-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/20/f2b7ac96a91cc5f70d81320adad24cc41bf52013508d649b1481db225780/plotly-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.32.3" + +[[packages.wheels]] +name = "polars-1.32.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/c8/226953cda6cf9ae63aa9714d396a9138029e31db3c504c15d6711b618f8f/polars-1.32.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "db56a7cb4898e173d62634e182f74bdff744c62be5470e0fe20df8d10f659af7" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.30" + +[[packages.wheels]] +name = "ptpython-3.0.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/15/77dfd9a52fa6c87b50232b246df0cfacacc0665c95ebe4a517cc994819f0/ptpython-3.0.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.0.0" + +[[packages.wheels]] +name = "pyzmq-27.0.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9b/12/52da5509800f7ff2d287b2f2b4e636e7ea0f001181cba6964ff6c1537778/pyzmq-27.0.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/12/09e048d1814195e01f354155fb772fb0854bd3450b5f5a82224b3a319f0e/rpds_py-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.1" + +[[packages.wheels]] +name = "scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/47/9291cfa1db1dae9880420d1e07dbc7e8dd4a7cdbc42eaba22512e6bde958/scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11" + +[[packages]] +name = "scipy" +version = "1.16.1" + +[[packages.wheels]] +name = "scipy-1.16.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/12/c0efd2941f01940119b5305c375ae5c0fcb7ec193f806bd8f158b73a1782/scipy-1.16.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "81929ed0fa7a5713fcdd8b2e6f73697d3b4c4816d090dd34ff937c20fa90e8ab" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/f9/840ef19a298ef7099f4a692772001f2f552b0917a3fb230f872a1c40ba11/scs-3.2.7.post2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.0" + +[[packages.wheels]] +name = "skrub-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/c3/33087009e113b247a2ee58ff3a2a93c51d43cc4f0a3400f6fdb11deea6dc/skrub-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.7" + +[[packages.wheels]] +name = "soupsieve-2.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.46.1" + +[[packages.wheels]] +name = "streamlit-1.46.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/3b/35400175788cdd6a43c90dce1e7f567eb6843a3ba0612508c0f19ee31f5f/streamlit-1.46.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.7.1" + +[[packages.wheels]] +name = "xarray-2025.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/ea/9554e5fb78eda4dbc9e9ccaf23034166fe3e9ea9af82ea6204b9578434bc/xarray-2025.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.24.0" + +[[packages.wheels]] +name = "zstandard-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/03/ab8b82ae5eb49eca4d3662705399c44442666cc1ce45f44f2d263bb1ae31/zstandard-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whl_wheels.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whl_wheels.toml new file mode 100644 index 00000000..ad19eda6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whl_wheels.toml @@ -0,0 +1,5403 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.17.0" + +[[packages.wheels]] +name = "cohere-5.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/21/d0eb7c8e5b3bb748190c59819928c38cafcdf8f8aaca9d21074c64cf1cae/cohere-5.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe7d8228cda5335a7db79a828893765a4d5a40b7f7a43443736f339dc7813fa4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.0" + +[[packages.wheels]] +name = "duckdb-1.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/b2/98fb89ae81611855f35984e96f648d871f3967bb3f524b51d1372d052f0c/duckdb-1.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.116.1" + +[[packages.wheels]] +name = "fastapi-0.116.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/47/d63c60f59a59467fda0f93f46335c9d18526d7071f025cb5b89d5353ea42/fastapi-0.116.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.136.6" + +[[packages.wheels]] +name = "hypothesis-6.136.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/e2/7fd1a9b12740b3472349f7e3c216e94b1b2e03d32c9d842284b57eb5a3f8/hypothesis-6.136.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.7" + +[[packages.wheels]] +name = "jupyterlab-4.4.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/01/44f35124896dd5c73b26705c25bb8af2089895b32f057a1e4a3488847333/jupyterlab-4.4.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "808bae6136b507a4d18f04254218bfe71ed8ba399a36ef3280d5f259e69abf80" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.16" + +[[packages.wheels]] +name = "langsmith-0.4.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/ed/7a48189bdad850cfd47df671204c31779dd190de6bc681f169d4535f852e/langsmith-0.4.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.45.0" + +[[packages.wheels]] +name = "llvmlite-0.45.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/16/bac6a35ae77d6f881d2c6b54cbb2df2b07e030e1a66da8041359d09b0d87/llvmlite-0.45.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f68890ceb662e874933103e91e239389ff7275c4befba8e43ccd46ae3231b89e" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.8.2" + +[[packages.wheels]] +name = "markdown-3.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.3" + +[[packages.wheels]] +name = "maturin-1.9.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/59/42c83e3234a57b6132b2a875137818aabe79ec3621f08320ff52798fd352/maturin-1.9.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.0" + +[[packages.wheels]] +name = "numba-0.62.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/a2/3a9eb747d77693054504540e9da0640c169dd97e3e268c1150bf55a22b97/numba-0.62.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "591a9c485904f219a129b0493f89d27de24286fb66dd5a577b11edc62fc78db4" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.107.2" + +[[packages.wheels]] +name = "openai-1.107.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/65/e51a77a368eed7b9cc22ce394087ab43f13fa2884724729b716adf2da389/openai-1.107.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.2" + +[[packages.wheels]] +name = "pandas-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/3c/f2af1ce8840ef648584a6156489636b5692c162771918aa95707c165ad2b/pandas-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.33.1" + +[[packages.wheels]] +name = "polars-1.33.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/a6/dc535da476c93b2efac619e04ab81081e004e4b4553352cd10e0d33a015d/polars-1.33.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c9781c704432a2276a185ee25898aa427f39a904fbe8fde4ae779596cdbd7a9e" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.0.0" + +[[packages.wheels]] +name = "pyzmq-27.0.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9b/12/52da5509800f7ff2d287b2f2b4e636e7ea0f001181cba6964ff6c1537778/pyzmq-27.0.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.1" + +[[packages.wheels]] +name = "skrub-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/71/06d2893916010ce08ca51b87ed01b8c4d42b8c9098e05b7570db68aa223a/skrub-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2badb4e84cdc64820f170135fab404883e282c94ddc7e6177015b3136e8855ca" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.7" + +[[packages.wheels]] +name = "soupsieve-2.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.8" + +[[packages.wheels]] +name = "spyder-6.0.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/a4/c6d8b5d6793687dfddca051fafbb0632bee8c5dce6007c830841b97d4250/spyder-6.0.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf7778e5d8271eabee1bd2764735b22d233afe01a50aee95f0afdf4d789dba05" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.24.0" + +[[packages.wheels]] +name = "zstandard-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/03/ab8b82ae5eb49eca4d3662705399c44442666cc1ce45f44f2d263bb1ae31/zstandard-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb3_wheels.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb3_wheels.toml new file mode 100644 index 00000000..c195ce96 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb3_wheels.toml @@ -0,0 +1,5381 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.16.1" + +[[packages.wheels]] +name = "cohere-5.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c6/72309ac75f3567425ca31a601ad394bfee8d0f4a1569dfbc80cbb2890d07/cohere-5.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.6.5" + +[[packages.wheels]] +name = "cvxpy-1.6.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/3c/86682ec2b72f72e46e359903d7c18686e5314aa4baa96c77f6595c58fb03/cvxpy-1.6.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.2" + +[[packages.wheels]] +name = "cython-3.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c2/94/65ba40faeafe74845ba22b61aff7d73475671c3bd24bffc6cba53f3b0063/cython-3.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ab1319c77f15b0ae04b3fb03588df3afdec4cf79e90eeea5c961e0ebd8fdf72" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.1" + +[[packages.wheels]] +name = "django-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/92/7448697b5838b3a1c6e1d2d6a673e908d0398e84dc4f803a2ce11e7ffc0f/django-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9b680e84f9a0e71da83e399f1e922e1ab37b2173ced046b541c72e1589a5961" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ab/e9/f83285b0cb3729f24321a038f272490dfb76ca531b7cef832037b7bd077c/duckdb-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.3.0" + +[[packages.wheels]] +name = "faker-37.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/99/045b2dae19a01b9fbb23b9971bc04f4ef808e7f3a213d08c81067304a210/faker-37.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c94daa16a432f2d2bc803c7ff602509699fca228d13e97e379cd860a7e216e" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.115.12" + +[[packages.wheels]] +name = "fastapi-0.115.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/b3/b51f09c2ba432a576fe63758bddc81f78f0c6309d9e5c10d194313bf021e/fastapi-0.115.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.20.0" + +[[packages.wheels]] +name = "google_genai-1.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/b4/08f3ea414060a7e7d4436c08bb22d03dabef74cc05ef13ef8cd846156d5b/google_genai-1.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.135.4" + +[[packages.wheels]] +name = "hypothesis-6.135.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/d4/25b3a9f35199eb1904967ca3e6db4afd636911fa39695760b0afac84f38a/hypothesis-6.135.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a3b13ce35d43e14aaf6a6ca4cc411e5342be5d05b77977499d07cf6a61e6e71" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.1" + +[[packages.wheels]] +name = "joblib-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7d/4f/1195bbac8e0c2acc5f740661631d8d750dc38d4a32b23ee5df3cde6f4e0d/joblib-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.4" + +[[packages.wheels]] +name = "jupyterlab-4.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/82/66910ce0995dbfdb33609f41c99fe32ce483b9624a3e7d672af14ff63b9f/jupyterlab-4.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "711611e4f59851152eb93316c3547c3ec6291f16bb455f1f4fa380d25637e0dd" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/dc/c1abe38c37c071d0fc71c9a474fd0b9ede05d42f5a458d584619cfd2371a/kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.8" + +[[packages.wheels]] +name = "langsmith-0.4.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/4f/481324462c44ce21443b833ad73ee51117031d41c16fec06cddbb7495b26/langsmith-0.4.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca2f6024ab9d2cd4d091b2e5b58a5d2cb0c354a0c84fe214145a89ad450abae0" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.44.0" + +[[packages.wheels]] +name = "llvmlite-0.44.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/81/e66fc86539293282fd9cb7c9417438e897f369e79ffb62e1ae5e5154d4dd/llvmlite-0.44.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.7" + +[[packages.wheels]] +name = "Markdown-3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/08/83871f3c50fc983b88547c196d11cf8c3340e37c32d2e9d6152abe2c61f7/Markdown-3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.5" + +[[packages.wheels]] +name = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/c2/24302e93ff431b8f4173ee1dd88976c8d80483cadbc5d3d777cef47b3a1c/matplotlib-3.10.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.0" + +[[packages.wheels]] +name = "maturin-1.9.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0e/44/b3236b2a3f6d26600cb3c81535c06c80fd80cbcdcf893648d8bb8660edbe/maturin-1.9.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fb9796c1893d1e3cd9da9325ef3c63d54a5b0fe6183ddae4954b10c64a1ae5e3" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.9.3" + +[[packages.wheels]] +name = "mcp-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/45/823ad05504bea55cb0feb7470387f151252127ad5c72f8882e8fe6cf5c0e/mcp-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.4.4" + +[[packages.wheels]] +name = "multidict-6.4.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/7a/cfe1a47632be861b627f46f642c1d031704cc1c0f5c0efbde2ad44aa34bd/multidict-6.4.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373" + +[[packages]] +name = "mypy" +version = "1.16.1" + +[[packages.wheels]] +name = "mypy-1.16.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5a/fd/d486a0827a1c597b3b48b1bdef47228a6e9ee8102ab8c28f944cb83b65dc/mypy-1.16.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.0.1" + +[[packages.wheels]] +name = "narwhals-2.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/26/43caf834e47c63883a5eddc02893b7fdbe6a0a4508ff6dc401907f3cc085/narwhals-2.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.2" + +[[packages.wheels]] +name = "notebook-7.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/16/d3c36a0b1f6dfcf218add8eaf803bf0473ff50681ac4d51acb7ba02bce34/notebook-7.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.61.2" + +[[packages.wheels]] +name = "numba-0.61.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/a4/6d3a0f2d3989e62a18749e1e9913d5fa4910bbb3e3311a035baea6caf26d/numba-0.61.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7" + +[[packages]] +name = "numpy" +version = "2.2.6" + +[[packages.wheels]] +name = "numpy-2.2.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/3b/d58c12eafcb298d4e6d0d40216866ab15f59e55d148a5658bb3132311fcf/numpy-2.2.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.101.0" + +[[packages.wheels]] +name = "openai-1.101.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/a6/0e39baa335bbd1c66c7e0a41dbbec10c5a15ab95c1344e7f7beb28eee65a/openai-1.101.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.1" + +[[packages.wheels]] +name = "pandas-2.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.2.0" + +[[packages.wheels]] +name = "plotly-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/20/f2b7ac96a91cc5f70d81320adad24cc41bf52013508d649b1481db225780/plotly-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.4" + +[[packages.wheels]] +name = "plotpy-2.7.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/98/9bc8f5a00dd45b53c37292c08ebcf9f94e895838ab2ad295d1c0eec88332/plotpy-2.7.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.32.2" + +[[packages.wheels]] +name = "polars-1.32.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/58/d2840554ef1c69e06a28ee928bdaa0d6a61af12205ff24c096628f217f99/polars-1.32.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5e1660a584e89e1d60cd89984feca38a695e491a966581fefe8be99c230ea154" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.30.2" + +[[packages.wheels]] +name = "protobuf-6.30.2-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/e9/7b9f1b259d509aef2b833c29a1f3c39185e2bf21c9c1be1cd11c22cb2149/protobuf-6.30.2-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.12.0" + +[[packages.wheels]] +name = "psygnal-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/ae/a3d6815db583b6d05878b3647ea0e2aa21ce6941d03c9d2c6caad1afbcf6/psygnal-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7" + +[[packages]] +name = "ptpython" +version = "3.0.30" + +[[packages.wheels]] +name = "ptpython-3.0.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/15/77dfd9a52fa6c87b50232b246df0cfacacc0665c95ebe4a517cc994819f0/ptpython-3.0.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.10.1" + +[[packages.wheels]] +name = "pymongo-4.10.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/2a/7c24a6144eaa06d18ed52822ea2b0f119fd9267cd1abbb75dae4d89a3803/pymongo-4.10.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.3.5" + +[[packages.wheels]] +name = "pytest-8.3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "26.4.0" + +[[packages.wheels]] +name = "pyzmq-26.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c6/6c/f289c1789d7bb6e5a3b3bef7b2a55089b8561d17132be7d960d3ff33b14e/pyzmq-26.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/12/09e048d1814195e01f354155fb772fb0854bd3450b5f5a82224b3a319f0e/rpds_py-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.1" + +[[packages.wheels]] +name = "scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/47/9291cfa1db1dae9880420d1e07dbc7e8dd4a7cdbc42eaba22512e6bde958/scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11" + +[[packages]] +name = "scipy" +version = "1.16.0" + +[[packages.wheels]] +name = "scipy-1.16.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/a7/4c94bbe91f12126b8bf6709b2471900577b7373a4fd1f431f28ba6f81115/scipy-1.16.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79a3c13d43c95aa80b87328a46031cf52508cf5f4df2767602c984ed1d3c6bbe" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/f9/840ef19a298ef7099f4a692772001f2f552b0917a3fb230f872a1c40ba11/scs-3.2.7.post2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.19.3" + +[[packages.wheels]] +name = "simplejson-3.19.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/58/b06226e6b0612f2b1fa13d5273551da259f894566b1eef32249ddfdcce44/simplejson-3.19.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.0" + +[[packages.wheels]] +name = "skrub-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/c3/33087009e113b247a2ee58ff3a2a93c51d43cc4f0a3400f6fdb11deea6dc/skrub-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "2.2.0" + +[[packages.wheels]] +name = "snowballstemmer-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/dc/c02e01294f7265e63a7315fe086dd1df7dacb9f840a804da846b96d01b96/snowballstemmer-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.6" + +[[packages.wheels]] +name = "soupsieve-2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9" + +[[packages]] +name = "sphinx" +version = "8.1.3" + +[[packages.wheels]] +name = "sphinx-8.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/26/60/1ddff83a56d33aaf6f10ec8ce84b4c007d9368b21008876fceda7e7381ef/sphinx-8.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "2.4.1" + +[[packages.wheels]] +name = "sse_starlette-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e4/f1/6c7eaa8187ba789a6dd6d74430307478d2a91c23a5452ab339b6fbe15a08/sse_starlette-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08b77ea898ab1a13a428b2b6f73cfe6d0e607a7b4e15b9bb23e4a37b087fd39a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.46.2" + +[[packages.wheels]] +name = "starlette-0.46.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/0c/9d30a4ebeb6db2b25a841afbb80f6ef9a854fc3b41be131d249a977b4959/starlette-0.46.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35" + +[[packages]] +name = "statsmodels" +version = "0.14.4" + +[[packages.wheels]] +name = "statsmodels-0.14.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1d/eb/cb8b01f5edf8f135eb3d0553d159db113a35b2948d0e51eeb735e7ae09ea/statsmodels-0.14.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0" + +[[packages]] +name = "streamlit" +version = "1.46.1" + +[[packages.wheels]] +name = "streamlit-1.46.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/3b/35400175788cdd6a43c90dce1e7f567eb6843a3ba0612508c0f19ee31f5f/streamlit-1.46.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.1" + +[[packages.wheels]] +name = "tornado-6.5.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/09/6526e32bf1049ee7de3bebba81572673b19a2a8541f795d887e92af1a8bc/tornado-6.5.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "14.2" + +[[packages.wheels]] +name = "websockets-14.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/13/8b7fc4cb551b9cfd9890f0fd66e53c18a06240319915533b033a56a3d520/websockets-14.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/21/abdedb4cdf6ff41ebf01a74087740a709e2edb146490e4d9beea054b0b7a/wrapt-1.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.7.1" + +[[packages.wheels]] +name = "xarray-2025.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/ea/9554e5fb78eda4dbc9e9ccaf23034166fe3e9ea9af82ea6204b9578434bc/xarray-2025.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.23.0" + +[[packages.wheels]] +name = "zstandard-0.23.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a2/bf/c6aaba098e2d04781e8f4f7c0ba3c7aa73d00e4c436bcc0cf059a66691d1/zstandard-0.23.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb4_wheels.toml b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb4_wheels.toml new file mode 100644 index 00000000..2901386e --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_13_7_0whlb4_wheels.toml @@ -0,0 +1,5392 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.9.0" + +[[packages.wheels]] +name = "anyio-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "21.2.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.1.0" + +[[packages.wheels]] +name = "black-25.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/64/94eb5f45dcb997d2082f097a3944cfc7fe87e071907f677e80788a2d7b7a/black-25.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.7.3" + +[[packages.wheels]] +name = "bokeh-3.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "1.17.1" + +[[packages.wheels]] +name = "cffi-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.10.0" + +[[packages.wheels]] +name = "clarabel-0.10.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/ba/67a0defb70ed910877049e915e6738fc0432edd5e46b97743ce78a1e5b95/clarabel-0.10.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c" + +[[packages]] +name = "click" +version = "8.2.1" + +[[packages.wheels]] +name = "click-8.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.16.1" + +[[packages.wheels]] +name = "cohere-5.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c6/72309ac75f3567425ca31a601ad394bfee8d0f4a1569dfbc80cbb2890d07/cohere-5.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "7.3.1" + +[[packages.wheels]] +name = "coloredlogs-7.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/b3/3ea34a2248fa707d04900195589357ccb924ae8db8810ecf26e17c4cb2e3/coloredlogs-7.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.2" + +[[packages.wheels]] +name = "comm-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/75/49e5bfe642f71f272236b5b2d2691cf915a7283cc0ceda56357b61daa538/comm-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.6.5" + +[[packages.wheels]] +name = "cvxpy-1.6.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/3c/86682ec2b72f72e46e359903d7c18686e5314aa4baa96c77f6595c58fb03/cvxpy-1.6.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.3" + +[[packages.wheels]] +name = "cython-3.1.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/09/100c0727d0fc8e4d7134c44c12b8c623e40f309401af56b7f6faf795c4bb/cython-3.1.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00264cafcc451dcefc01eaf29ed5ec150fb73af21d4d21105d97e9d829a53e99" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.3.0" + +[[packages.wheels]] +name = "duckdb-1.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ab/e9/f83285b0cb3729f24321a038f272490dfb76ca531b7cef832037b7bd077c/duckdb-1.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.116.1" + +[[packages.wheels]] +name = "fastapi-0.116.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/47/d63c60f59a59467fda0f93f46335c9d18526d7071f025cb5b89d5353ea42/fastapi-0.116.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.18.0" + +[[packages.wheels]] +name = "filelock-3.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.1" + +[[packages.wheels]] +name = "flask-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3d/68/9d4508e893976286d2ead7f8f571314af6c2037af34853a30fd769c02e9d/flask-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.19.5" + +[[packages.wheels]] +name = "folium-0.19.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/4d/bcbee0676dc06f0b014a030cb928e158c96daafb872a01ddee7e60a8c998/folium-0.19.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.5.1" + +[[packages.wheels]] +name = "fsspec-2025.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.0" + +[[packages.wheels]] +name = "geographiclib-2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/5a/a26132406f1f40cf51ea349a5f11b0a46cec02a2031ff82e391c2537247a/geographiclib-2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734" + +[[packages]] +name = "geopandas" +version = "1.0.1" + +[[packages.wheels]] +name = "geopandas-1.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c4/64/7d344cfcef5efddf9cf32f59af7f855828e9d74b5f862eddf5bfd9f25323/geopandas-1.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.44" + +[[packages.wheels]] +name = "GitPython-3.1.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/9a/4114a9057db2f1462d5c8f8390ab7383925fe1ac012eaa42402ad65c2963/GitPython-3.1.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.20.0" + +[[packages.wheels]] +name = "google_genai-1.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b9/b4/08f3ea414060a7e7d4436c08bb22d03dabef74cc05ef13ef8cd846156d5b/google_genai-1.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.7.3" + +[[packages.wheels]] +name = "griffe-1.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c6/5c20af38c2a57c15d87f7f38bee77d63c1d2a3689f74fefaf35915dd12b2/griffe-1.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75" + +[[packages]] +name = "groq" +version = "0.28.0" + +[[packages.wheels]] +name = "groq-0.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/24/20fc18d1b3e0883aeb24286ca8f26dc1970561b07d9c4412c84561bdf307/groq-0.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.34.4" + +[[packages.wheels]] +name = "huggingface_hub-0.34.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/7b/bb06b061991107cd8783f300adff3e7b7f284e330fd82f507f2a1417b11d/huggingface_hub-0.34.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.136.6" + +[[packages.wheels]] +name = "hypothesis-6.136.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/e2/7fd1a9b12740b3472349f7e3c216e94b1b2e03d32c9d842284b57eb5a3f8/hypothesis-6.136.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipycanvas" +version = "0.13.3" + +[[packages.wheels]] +name = "ipycanvas-0.13.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/fc/e3867e413adbfede3a9c372ec015416ccb0a6493659db5812eeec447a73b/ipycanvas-0.13.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa" + +[[packages]] +name = "ipykernel" +version = "6.29.5" + +[[packages.wheels]] +name = "ipykernel-6.29.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5c/368ae6c01c7628438358e6d337c19b05425727fbb221d2a3c4303c372f42/ipykernel-6.29.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "8.37.0" + +[[packages.wheels]] +name = "ipython-8.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/d0/274fbf7b0b12643cbbc001ce13e6a5b1607ac4929d1b11c72460152c9fc3/ipython-8.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.2.1" + +[[packages.wheels]] +name = "jaraco_functools-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/fd/179a20f832824514df39a90bb0e5372b314fea99f217f5ab942b10a8a4e8/jaraco_functools-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.10.0" + +[[packages.wheels]] +name = "jiter-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" + +[[packages]] +name = "joblib" +version = "1.5.1" + +[[packages.wheels]] +name = "joblib-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7d/4f/1195bbac8e0c2acc5f740661631d8d750dc38d4a32b23ee5df3cde6f4e0d/joblib-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.2.5" + +[[packages.wheels]] +name = "jupyter_lsp-2.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da" + +[[packages]] +name = "jupyter-server" +version = "2.16.0" + +[[packages.wheels]] +name = "jupyter_server-2.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/1f/5ebbced977171d09a7b0c08a285ff9a20aafb9c51bde07e52349ff1ddd71/jupyter_server-2.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.5" + +[[packages.wheels]] +name = "jupyterlab-4.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/74/e144ce85b34414e44b14c1f6bf2e3bfe17964c8e5670ebdc7629f2e53672/jupyterlab-4.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e76244cceb2d1fb4a99341f3edc866f2a13a9e14c50368d730d75d8017be0863" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.8" + +[[packages.wheels]] +name = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d0/dc/c1abe38c37c071d0fc71c9a474fd0b9ede05d42f5a458d584619cfd2371a/kiwisolver-1.4.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.72" + +[[packages.wheels]] +name = "langchain_core-0.3.72-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/7d/9f75023c478e3b854d67da31d721e39f0eb30ae969ec6e755430cb1c0fb5/langchain_core-0.3.72-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.9" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/52/7638394b88bc15083fd2c3752a843784d9d2d110d68fed6437c8607fb749/langchain_text_splitters-0.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401" + +[[packages]] +name = "langsmith" +version = "0.4.16" + +[[packages.wheels]] +name = "langsmith-0.4.16-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/ed/7a48189bdad850cfd47df671204c31779dd190de6bc681f169d4535f852e/langsmith-0.4.16-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.45.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.45.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e8/56/895fe4c7fc30a899941a8dcee2f1e81c08a7450f65d11a1c60cedae8e203/llvmlite-0.45.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7d763966615bff2ed47b8aff335c7cf8c62851e4676fff353225b2b36aeab5cd" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.8.2" + +[[packages.wheels]] +name = "markdown-3.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.5" + +[[packages.wheels]] +name = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/c2/24302e93ff431b8f4173ee1dd88976c8d80483cadbc5d3d777cef47b3a1c/matplotlib-3.10.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.3" + +[[packages.wheels]] +name = "maturin-1.9.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/59/42c83e3234a57b6132b2a875137818aabe79ec3621f08320ff52798fd352/maturin-1.9.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.3" + +[[packages.wheels]] +name = "mistralai-1.9.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/9a/0c48706c646b0391b798f8568f2b1545e54d345805e988003c10450b7b4c/mistralai-1.9.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.4.4" + +[[packages.wheels]] +name = "multidict-6.4.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/7a/cfe1a47632be861b627f46f642c1d031704cc1c0f5c0efbde2ad44aa34bd/multidict-6.4.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.0.1" + +[[packages.wheels]] +name = "narwhals-2.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/26/43caf834e47c63883a5eddc02893b7fdbe6a0a4508ff6dc401907f3cc085/narwhals-2.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.4" + +[[packages.wheels]] +name = "notebook-7.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/c0/e64d2047fd752249b0b69f6aee2a7049eb94e7273e5baabc8b8ad05cc068/notebook-7.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32840f7f777b6bff79bb101159336e9b332bdbfba1495b8739e34d1d65cbc1c0" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.0rc1" + +[[packages.wheels]] +name = "numba-0.62.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/27/5fbac05052484ecd0712fa9db869bfa6811c2f94df6c33a9e9074d448b08/numba-0.62.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c4c254119723e707b9ab64b3a2d26d44c52560d928db8339001f78df1f1db875" + +[[packages]] +name = "numpy" +version = "2.3.2" + +[[packages.wheels]] +name = "numpy-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/aa/6f/a428fd1cb7ed39b4280d057720fed5121b0d7754fd2a9768640160f5517b/numpy-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c63d95dc9d67b676e9108fe0d2182987ccb0f11933c1e8959f42fa0da8d4fa56" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.101.0" + +[[packages.wheels]] +name = "openai-1.101.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/a6/0e39baa335bbd1c66c7e0a41dbbec10c5a15ab95c1344e7f7beb28eee65a/openai-1.101.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b" + +[[packages]] +name = "opencv-python" +version = "4.11.0.86" + +[[packages.wheels]] +name = "opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a4/7d/f1c30a92854540bf789e9cd5dde7ef49bbe63f855b85a2e6b3db8135c591/opencv_python-4.11.0.86-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "overrides" +version = "7.7.0" + +[[packages.wheels]] +name = "overrides-7.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.1" + +[[packages.wheels]] +name = "pandas-2.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.4" + +[[packages.wheels]] +name = "parso-0.8.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/ac/dac4a63f978e4dcb3c6d3a78c4d8e0192a113d288502a1216950c41b1027/parso-0.8.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.2.0" + +[[packages.wheels]] +name = "plotly-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/20/f2b7ac96a91cc5f70d81320adad24cc41bf52013508d649b1481db225780/plotly-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.32.3" + +[[packages.wheels]] +name = "polars-1.32.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/c8/226953cda6cf9ae63aa9714d396a9138029e31db3c504c15d6711b618f8f/polars-1.32.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "db56a7cb4898e173d62634e182f74bdff744c62be5470e0fe20df8d10f659af7" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.51" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.51-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.30" + +[[packages.wheels]] +name = "ptpython-3.0.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/15/77dfd9a52fa6c87b50232b246df0cfacacc0665c95ebe4a517cc994819f0/ptpython-3.0.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-server" +version = "1.12.2" + +[[packages.wheels]] +name = "python_lsp_server-1.12.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/e7/28010a326ef591e1409daf9d57a47de94156c147ad1befe74d8196d82729/python_lsp_server-1.12.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "2.0.15" + +[[packages.wheels]] +name = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/16/2ab7b3b7f55f3c6929e5f629e1a68362981e4e5fed592a2ed1cb4b4914a5/pywinpty-2.0.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.0.0" + +[[packages.wheels]] +name = "pyzmq-27.0.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9b/12/52da5509800f7ff2d287b2f2b4e636e7ea0f001181cba6964ff6c1537778/pyzmq-27.0.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.6.1" + +[[packages.wheels]] +name = "qtconsole-5.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/8a/635610fb6131bc702229e2780d7b042416866ab78f8ed1ff24c4b23a2f4c/qtconsole-5.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2024.11.6" + +[[packages.wheels]] +name = "regex-2024.11.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.24.0" + +[[packages.wheels]] +name = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/12/09e048d1814195e01f354155fb772fb0854bd3450b5f5a82224b3a319f0e/rpds_py-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a" + +[[packages]] +name = "rsa" +version = "4.7.2" + +[[packages.wheels]] +name = "rsa-4.7.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/93/0c0f002031f18b53af7a6166103c02b9c0667be528944137cc954ec921b3/rsa-4.7.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.1" + +[[packages.wheels]] +name = "scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/47/9291cfa1db1dae9880420d1e07dbc7e8dd4a7cdbc42eaba22512e6bde958/scikit_learn-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11" + +[[packages]] +name = "scipy" +version = "1.16.1" + +[[packages.wheels]] +name = "scipy-1.16.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/12/c0efd2941f01940119b5305c375ae5c0fcb7ec193f806bd8f158b73a1782/scipy-1.16.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "81929ed0fa7a5713fcdd8b2e6f73697d3b4c4816d090dd34ff937c20fa90e8ab" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.7.post2" + +[[packages.wheels]] +name = "scs-3.2.7.post2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/f9/840ef19a298ef7099f4a692772001f2f552b0917a3fb230f872a1c40ba11/scs-3.2.7.post2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.0" + +[[packages.wheels]] +name = "skrub-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/c3/33087009e113b247a2ee58ff3a2a93c51d43cc4f0a3400f6fdb11deea6dc/skrub-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soupsieve" +version = "2.7" + +[[packages.wheels]] +name = "soupsieve-2.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.0.7" + +[[packages.wheels]] +name = "spyder-6.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/c8/1568fa96351ddad878d42e7487d9637604c7f34030171acf810f47914d9d/spyder-6.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b" + +[[packages]] +name = "spyder-kernels" +version = "3.0.5" + +[[packages.wheels]] +name = "spyder_kernels-3.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/2d/b1c88e914ebdec2a9cf066b2c283ee234f4052c31922017407fa8adb89f3/spyder_kernels-3.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.46.1" + +[[packages.wheels]] +name = "streamlit-1.46.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/3b/35400175788cdd6a43c90dce1e7f567eb6843a3ba0612508c0f19ee31f5f/streamlit-1.46.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728" + +[[packages]] +name = "superqt" +version = "0.7.3" + +[[packages.wheels]] +name = "superqt-0.7.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/53/ce8e705a0fca9ff08406d0232409c6dacd09a04cdc5124e33aa3ad97c117/superqt-0.7.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.9.0" + +[[packages.wheels]] +name = "tiktoken-0.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.1" + +[[packages.wheels]] +name = "tokenizers-0.21.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.30.0" + +[[packages.wheels]] +name = "trio-0.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/8e/3f6dfda475ecd940e786defe6df6c500734e686c9cd0a0f8ef6821e9b2f2/trio-0.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.2" + +[[packages.wheels]] +name = "uncertainties-3.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/fc/97711d2a502881d871e3cf2d2645e21e7f8e4d4fd9a56937557790cade6a/uncertainties-3.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "uvicorn" +version = "0.34.2" + +[[packages.wheels]] +name = "uvicorn-0.34.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/4b/4cef6ce21a2aaca9d852a6e84ef4f135d99fcd74fa75105e2fc0c8308acd/uvicorn-0.34.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.0" + +[[packages.wheels]] +name = "waitress-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/a9/485c953a1ac4cb98c28e41fd2c7184072df36bbf99734a51d44d04176878/waitress-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.7.1" + +[[packages.wheels]] +name = "xarray-2025.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/ea/9554e5fb78eda4dbc9e9ccaf23034166fe3e9ea9af82ea6204b9578434bc/xarray-2025.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2023.10.1" + +[[packages.wheels]] +name = "xyzservices-2023.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/c3/e06dfa46464cce3eda4b86df8847cab99d9bc545c76807ee689545187a4c/xyzservices-2023.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68" + +[[packages]] +name = "yapf" +version = "0.40.1" + +[[packages.wheels]] +name = "yapf-0.40.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/75/c374517c09e31bf22d3b3f156d73e0f38d08e29b2afdd607cef5f1e10aa9/yapf-0.40.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313" + +[[packages]] +name = "yarl" +version = "1.18.3" + +[[packages.wheels]] +name = "yarl-1.18.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/d5/688db678e987c3e0fb17867970700b92603cadf36c56e5fb08f23e822a0c/yarl-1.18.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c" + +[[packages]] +name = "yt-dlp" +version = "2025.2.19" + +[[packages.wheels]] +name = "yt_dlp-2025.2.19-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/45/6d1b759e68f5363b919828fb0e0c167a1cd5003b5b7c74cc0f0c2096be4f/yt_dlp-2025.2.19-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.21.0" + +[[packages.wheels]] +name = "zipp-3.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931" + +[[packages]] +name = "zstandard" +version = "0.24.0" + +[[packages.wheels]] +name = "zstandard-0.24.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/03/ab8b82ae5eb49eca4d3662705399c44442666cc1ce45f44f2d263bb1ae31/zstandard-0.24.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dot.toml b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dot.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dot.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dotb3.toml b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dotb3.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1dotb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1free.toml b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1free.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1free.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1freeb3.toml b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1freeb3.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.64-3_14_0_1freeb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_04/pylock.wppmbuild.toml b/winpython/portable/cycle_2025_04/pylock.wppmbuild.toml new file mode 100644 index 00000000..af5bd953 --- /dev/null +++ b/winpython/portable/cycle_2025_04/pylock.wppmbuild.toml @@ -0,0 +1,376 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.1.0" + +[[packages.wheels]] +name = "jaraco.functools-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/4f/24b319316142c44283d7540e76c7b5a6dbd5db623abd86bb7b3491c21018/jaraco.functools-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "requests" +version = "2.32.3" + +[[packages.wheels]] +name = "requests-2.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "urllib3" +version = "2.4.0" + +[[packages.wheels]] +name = "urllib3-2.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250802b2" + +[[packages.wheels]] +name = "wppm-17.2.20250802b2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/7b/07a8203e29fea503b6012a075055fdbc57c4be95739e4a9b7d65ed8ef599/wppm-17.2.20250802b2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed916dcefbc2d597a77cc74d459e8661c59584a690a7d4063d60976fb4d1499f" diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dot.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dot.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dot.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb3.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb3.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb3.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb4.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb4.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0dotb4.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slim.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slim.txt new file mode 100644 index 00000000..e88e4daa --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slim.txt @@ -0,0 +1,1016 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.17.0 \ + --hash=sha256:fe7d8228cda5335a7db79a828893765a4d5a40b7f7a43443736f339dc7813fa4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.0 \ + --hash=sha256:07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.116.1 \ + --hash=sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.21.0 \ + --hash=sha256:74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.136.6 \ + --hash=sha256:1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.7 \ + --hash=sha256:808bae6136b507a4d18f04254218bfe71ed8ba399a36ef3280d5f259e69abf80 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.16 \ + --hash=sha256:9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.45.0 \ + --hash=sha256:f68890ceb662e874933103e91e239389ff7275c4befba8e43ccd46ae3231b89e +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.8.2 \ + --hash=sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.1.0 \ + --hash=sha256:32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.3 \ + --hash=sha256:3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.0 \ + --hash=sha256:591a9c485904f219a129b0493f89d27de24286fb66dd5a577b11edc62fc78db4 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.107.2 \ + --hash=sha256:d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.2 \ + --hash=sha256:12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.0 \ + --hash=sha256:ff5464babbb11173ea2b1124bf287f972bb4addea1bf1eea491eca5f07931fbc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.33.1 \ + --hash=sha256:c9781c704432a2276a185ee25898aa427f39a904fbe8fde4ae779596cdbd7a9e +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.0.0 \ + --hash=sha256:dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371 +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.1 \ + --hash=sha256:2badb4e84cdc64820f170135fab404883e282c94ddc7e6177015b3136e8855ca +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.7 \ + --hash=sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4 +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.8 \ + --hash=sha256:bf7778e5d8271eabee1bd2764735b22d233afe01a50aee95f0afdf4d789dba05 +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.24.0 \ + --hash=sha256:d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb3.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb3.txt new file mode 100644 index 00000000..9a72727f --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb3.txt @@ -0,0 +1,1012 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==1.17.1 \ + --hash=sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.16.1 \ + --hash=sha256:37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.6.5 \ + --hash=sha256:51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.2 \ + --hash=sha256:8ab1319c77f15b0ae04b3fb03588df3afdec4cf79e90eeea5c961e0ebd8fdf72 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.1 \ + --hash=sha256:5585af146e83af51c61d49168a741a6280a482072572e16573af1e5c6b600f8a +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.1 \ + --hash=sha256:a9b680e84f9a0e71da83e399f1e922e1ab37b2173ced046b541c72e1589a5961 +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.3.0 \ + --hash=sha256:48c94daa16a432f2d2bc803c7ff602509699fca228d13e97e379cd860a7e216e +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.115.12 \ + --hash=sha256:e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.20.0 \ + --hash=sha256:ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.20.2 \ + --hash=sha256:1f892c04bc23e8a3a9cde082b606b9463c9ff78c3d0c00e2ddcc41fe6e738458 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.135.4 \ + --hash=sha256:6a3b13ce35d43e14aaf6a6ca4cc411e5342be5d05b77977499d07cf6a61e6e71 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.1 \ + --hash=sha256:4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.4 \ + --hash=sha256:711611e4f59851152eb93316c3547c3ec6291f16bb455f1f4fa380d25637e0dd +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.8 \ + --hash=sha256:ca2f6024ab9d2cd4d091b2e5b58a5d2cb0c354a0c84fe214145a89ad450abae0 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.44.0 \ + --hash=sha256:2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.7 \ + --hash=sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.1.0 \ + --hash=sha256:32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.5 \ + --hash=sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.0 \ + --hash=sha256:fb9796c1893d1e3cd9da9325ef3c63d54a5b0fe6183ddae4954b10c64a1ae5e3 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.9.3 \ + --hash=sha256:69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.4.4 \ + --hash=sha256:8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.16.1 \ + --hash=sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.0.1 \ + --hash=sha256:837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.2 \ + --hash=sha256:9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.61.2 \ + --hash=sha256:59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7 +numpy==2.2.6 \ + --hash=sha256:b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.101.0 \ + --hash=sha256:6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.1 \ + --hash=sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.6.3 \ + --hash=sha256:ccd2a0587ab382bd55b8ea099706f31b64aadac697b8a41923d3b18b9ed618d6 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.0 \ + --hash=sha256:777f8c7b66ab820b70ea5ad09faaa6818308220caae89da3b5c5f359faa72a5e +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.2.0 \ + --hash=sha256:32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.4 \ + --hash=sha256:8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.32.2 \ + --hash=sha256:5e1660a584e89e1d60cd89984feca38a695e491a966581fefe8be99c230ea154 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.30.2 \ + --hash=sha256:7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.12.0 \ + --hash=sha256:d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7 +ptpython==3.0.30 \ + --hash=sha256:bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.10.1 \ + --hash=sha256:45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.3.5 \ + --hash=sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==26.4.0 \ + --hash=sha256:23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.1 \ + --hash=sha256:ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11 +scipy==1.16.0 \ + --hash=sha256:79a3c13d43c95aa80b87328a46031cf52508cf5f4df2767602c984ed1d3c6bbe +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.19.3 \ + --hash=sha256:3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.0 \ + --hash=sha256:bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==2.2.0 \ + --hash=sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.6 \ + --hash=sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9 +sphinx==8.1.3 \ + --hash=sha256:09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==2.4.1 \ + --hash=sha256:08b77ea898ab1a13a428b2b6f73cfe6d0e607a7b4e15b9bb23e4a37b087fd39a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.46.2 \ + --hash=sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35 +statsmodels==0.14.4 \ + --hash=sha256:81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0 +streamlit==1.46.1 \ + --hash=sha256:dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.1 \ + --hash=sha256:908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==14.2 \ + --hash=sha256:b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.7.1 \ + --hash=sha256:e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.23.0 \ + --hash=sha256:f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb4.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb4.txt new file mode 100644 index 00000000..0bf427f2 --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0slimb4.txt @@ -0,0 +1,1014 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==1.17.1 \ + --hash=sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.16.1 \ + --hash=sha256:37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.6.5 \ + --hash=sha256:51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.3 \ + --hash=sha256:00264cafcc451dcefc01eaf29ed5ec150fb73af21d4d21105d97e9d829a53e99 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.1 \ + --hash=sha256:5585af146e83af51c61d49168a741a6280a482072572e16573af1e5c6b600f8a +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.116.1 \ + --hash=sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.20.0 \ + --hash=sha256:ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.21.0 \ + --hash=sha256:74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.136.6 \ + --hash=sha256:1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.1 \ + --hash=sha256:4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.5 \ + --hash=sha256:e76244cceb2d1fb4a99341f3edc866f2a13a9e14c50368d730d75d8017be0863 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.16 \ + --hash=sha256:9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.45.0rc1 \ + --hash=sha256:7d763966615bff2ed47b8aff335c7cf8c62851e4676fff353225b2b36aeab5cd +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.8.2 \ + --hash=sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.1.0 \ + --hash=sha256:32a5a08e9af02c8a6528942224c91b933b4bd2c7d078f9012943776fc313eeef +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.5 \ + --hash=sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.3 \ + --hash=sha256:3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.4.4 \ + --hash=sha256:8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.0.1 \ + --hash=sha256:837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.4 \ + --hash=sha256:32840f7f777b6bff79bb101159336e9b332bdbfba1495b8739e34d1d65cbc1c0 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.0rc1 \ + --hash=sha256:c4c254119723e707b9ab64b3a2d26d44c52560d928db8339001f78df1f1db875 +numpy==2.3.2 \ + --hash=sha256:c63d95dc9d67b676e9108fe0d2182987ccb0f11933c1e8959f42fa0da8d4fa56 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.101.0 \ + --hash=sha256:6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.1 \ + --hash=sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.7.5 \ + --hash=sha256:1c3b4a335d56d5aa0cf5d6e1c3684a297e24a62cf99345c5e9eb8552837b97c3 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.2.0 \ + --hash=sha256:32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.32.3 \ + --hash=sha256:db56a7cb4898e173d62634e182f74bdff744c62be5470e0fe20df8d10f659af7 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.30 \ + --hash=sha256:bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.0.0 \ + --hash=sha256:dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371 +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.1 \ + --hash=sha256:ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11 +scipy==1.16.1 \ + --hash=sha256:81929ed0fa7a5713fcdd8b2e6f73697d3b4c4816d090dd34ff937c20fa90e8ab +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.0 \ + --hash=sha256:bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.7 \ + --hash=sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4 +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.46.1 \ + --hash=sha256:dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.7.1 \ + --hash=sha256:e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.24.0 \ + --hash=sha256:d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whl_wheels.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whl_wheels.txt new file mode 100644 index 00000000..a1d87058 --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whl_wheels.txt @@ -0,0 +1,982 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.17.0 \ + --hash=sha256:fe7d8228cda5335a7db79a828893765a4d5a40b7f7a43443736f339dc7813fa4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.0 \ + --hash=sha256:07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.116.1 \ + --hash=sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.136.6 \ + --hash=sha256:1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.7 \ + --hash=sha256:808bae6136b507a4d18f04254218bfe71ed8ba399a36ef3280d5f259e69abf80 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.16 \ + --hash=sha256:9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.45.0 \ + --hash=sha256:f68890ceb662e874933103e91e239389ff7275c4befba8e43ccd46ae3231b89e +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.8.2 \ + --hash=sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.3 \ + --hash=sha256:3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.0 \ + --hash=sha256:591a9c485904f219a129b0493f89d27de24286fb66dd5a577b11edc62fc78db4 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.107.2 \ + --hash=sha256:d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.2 \ + --hash=sha256:12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.33.1 \ + --hash=sha256:c9781c704432a2276a185ee25898aa427f39a904fbe8fde4ae779596cdbd7a9e +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.0.0 \ + --hash=sha256:dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371 +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.1 \ + --hash=sha256:2badb4e84cdc64820f170135fab404883e282c94ddc7e6177015b3136e8855ca +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.7 \ + --hash=sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4 +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.8 \ + --hash=sha256:bf7778e5d8271eabee1bd2764735b22d233afe01a50aee95f0afdf4d789dba05 +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.24.0 \ + --hash=sha256:d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb3_wheels.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb3_wheels.txt new file mode 100644 index 00000000..557f9563 --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb3_wheels.txt @@ -0,0 +1,978 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==1.17.1 \ + --hash=sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.16.1 \ + --hash=sha256:37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.6.5 \ + --hash=sha256:51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.2 \ + --hash=sha256:8ab1319c77f15b0ae04b3fb03588df3afdec4cf79e90eeea5c961e0ebd8fdf72 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.1 \ + --hash=sha256:a9b680e84f9a0e71da83e399f1e922e1ab37b2173ced046b541c72e1589a5961 +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.3.0 \ + --hash=sha256:48c94daa16a432f2d2bc803c7ff602509699fca228d13e97e379cd860a7e216e +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.115.12 \ + --hash=sha256:e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.20.0 \ + --hash=sha256:ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.135.4 \ + --hash=sha256:6a3b13ce35d43e14aaf6a6ca4cc411e5342be5d05b77977499d07cf6a61e6e71 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.1 \ + --hash=sha256:4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.4 \ + --hash=sha256:711611e4f59851152eb93316c3547c3ec6291f16bb455f1f4fa380d25637e0dd +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.8 \ + --hash=sha256:ca2f6024ab9d2cd4d091b2e5b58a5d2cb0c354a0c84fe214145a89ad450abae0 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.44.0 \ + --hash=sha256:2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.7 \ + --hash=sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.5 \ + --hash=sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.0 \ + --hash=sha256:fb9796c1893d1e3cd9da9325ef3c63d54a5b0fe6183ddae4954b10c64a1ae5e3 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.9.3 \ + --hash=sha256:69b0136d1ac9927402ed4cf221d4b8ff875e7132b0b06edd446448766f34f9b9 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.4.4 \ + --hash=sha256:8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373 +mypy==1.16.1 \ + --hash=sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.0.1 \ + --hash=sha256:837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.2 \ + --hash=sha256:9ccef602721aaa5530852e3064710b8ae5415c4e2ce26f8896d0433222755259 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.61.2 \ + --hash=sha256:59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7 +numpy==2.2.6 \ + --hash=sha256:b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.101.0 \ + --hash=sha256:6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.1 \ + --hash=sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.2.0 \ + --hash=sha256:32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.4 \ + --hash=sha256:8dff5fd388048a8d3b4251329a9fe4027920386e0ebcc3c3642f59c432118c29 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.32.2 \ + --hash=sha256:5e1660a584e89e1d60cd89984feca38a695e491a966581fefe8be99c230ea154 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.30.2 \ + --hash=sha256:7653c99774f73fe6b9301b87da52af0e69783a2e371e8b599b3e9cb4da4b12b9 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.12.0 \ + --hash=sha256:d779f20c6977ec9d5b9fece23b4b28bbcf0a7773539a4a176b5527aea5da27c7 +ptpython==3.0.30 \ + --hash=sha256:bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.10.1 \ + --hash=sha256:45ee87a4e12337353242bc758accc7fb47a2f2d9ecc0382a61e64c8f01e86708 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.3.5 \ + --hash=sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==26.4.0 \ + --hash=sha256:23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.1 \ + --hash=sha256:ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11 +scipy==1.16.0 \ + --hash=sha256:79a3c13d43c95aa80b87328a46031cf52508cf5f4df2767602c984ed1d3c6bbe +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.19.3 \ + --hash=sha256:3bbcdc438dc1683b35f7a8dc100960c721f922f9ede8127f63bed7dfded4c64c +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.0 \ + --hash=sha256:bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==2.2.0 \ + --hash=sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.6 \ + --hash=sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9 +sphinx==8.1.3 \ + --hash=sha256:09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==2.4.1 \ + --hash=sha256:08b77ea898ab1a13a428b2b6f73cfe6d0e607a7b4e15b9bb23e4a37b087fd39a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.46.2 \ + --hash=sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35 +statsmodels==0.14.4 \ + --hash=sha256:81030108d27aecc7995cac05aa280cf8c6025f6a6119894eef648997936c2dd0 +streamlit==1.46.1 \ + --hash=sha256:dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.1 \ + --hash=sha256:908e7d64567cecd4c2b458075589a775063453aeb1d2a1853eedb806922f568b +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==14.2 \ + --hash=sha256:b439ea828c4ba99bb3176dc8d9b933392a2413c0f6b149fdcba48393f573377f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.7.1 \ + --hash=sha256:e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.23.0 \ + --hash=sha256:f3513916e8c645d0610815c257cbfd3242adfd5c4cfa78be514e5a3ebb42a41b diff --git a/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb4_wheels.txt b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb4_wheels.txt new file mode 100644 index 00000000..955be200 --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_13_7_0whlb4_wheels.txt @@ -0,0 +1,980 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.9.0 \ + --hash=sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==21.2.0 \ + --hash=sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.1.0 \ + --hash=sha256:a22f402b410566e2d1c950708c77ebf5ebd5d0d88a6a2e87c86d9fb48afa0d18 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.7.3 \ + --hash=sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==1.17.1 \ + --hash=sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.10.0 \ + --hash=sha256:7871b6f499ad66f71d4e7fb40754c4d986d4316f242beb62ff4f63a69785a50c +click==8.2.1 \ + --hash=sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.16.1 \ + --hash=sha256:37e2c1d69b1804071b5e5f5cb44f8b74127e318376e234572d021a1a729c6baa +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==7.3.1 \ + --hash=sha256:f08ee2a2cef08163ddd24596e48cba2243937abf915d7fb37d62254596b816a9 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.2 \ + --hash=sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.6.5 \ + --hash=sha256:51161b0e8b0d83dc07355bab938bd0734dd5531c98dca8d6faaa8b847c651339 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.3 \ + --hash=sha256:00264cafcc451dcefc01eaf29ed5ec150fb73af21d4d21105d97e9d829a53e99 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.3.0 \ + --hash=sha256:fbdfc1c0b83b90f780ae74038187ee696bb56ab727a289752372d7ec42dda65b +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.116.1 \ + --hash=sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.18.0 \ + --hash=sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.1 \ + --hash=sha256:07aae2bb5eaf77993ef57e357491839f5fd9f4dc281593a81a9e4d79a24f295c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.19.5 \ + --hash=sha256:4333fb3e6f3e9eedb231615d22c6d7df20aea5829554bd6908675865a37803b3 +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.5.1 \ + --hash=sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.0 \ + --hash=sha256:6b7225248e45ff7edcee32becc4e0a1504c606ac5ee163a5656d482e0cd38734 +geopandas==1.0.1 \ + --hash=sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.44 \ + --hash=sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.20.0 \ + --hash=sha256:ccd61d6ebcb14f5c778b817b8010e3955ae4f6ddfeaabf65f42f6d5e3e5a8125 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.7.3 \ + --hash=sha256:c6b3ee30c2f0f17f30bcdef5068d6ab7a2a4f1b8bf1a3e74b56fffd21e1c5f75 +groq==0.28.0 \ + --hash=sha256:c6f86638371c2cba2ca337232e76c8d412e75965ed7e3058d30c9aa5dfe84303 +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.34.4 \ + --hash=sha256:9b365d781739c93ff90c359844221beef048403f1bc1f1c123c191257c3c890a +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.136.6 \ + --hash=sha256:1d6296dde36d42263bd44a084c74e91467e78186676e410167f920aa0374a9e7 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipycanvas==0.13.3 \ + --hash=sha256:d37adb2f45d2fef1c3d33c69a0518055694d87827b2f577f3c426d7712f75daa +ipykernel==6.29.5 \ + --hash=sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==8.37.0 \ + --hash=sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.2.1 \ + --hash=sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.10.0 \ + --hash=sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4 +joblib==1.5.1 \ + --hash=sha256:4719a31f054c7d766948dcd83e9613686b27114f190f717cec7eaa2084f8a74a +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.2.5 \ + --hash=sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da +jupyter-server==2.16.0 \ + --hash=sha256:3d8db5be3bc64403b1c65b400a1d7f4647a5ce743f3b20dbdefe8ddb7b55af9e +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.5 \ + --hash=sha256:e76244cceb2d1fb4a99341f3edc866f2a13a9e14c50368d730d75d8017be0863 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.8 \ + --hash=sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.72 \ + --hash=sha256:9fa15d390600eb6b6544397a7aa84be9564939b6adf7a2b091179ea30405b240 +langchain-text-splitters==0.3.9 \ + --hash=sha256:cee0bb816211584ea79cc79927317c358543f40404bcfdd69e69ba3ccde54401 +langsmith==0.4.16 \ + --hash=sha256:9ba95ed09b057dfe227e882f5446e1824bfc9f2c89de542ee6f0f8d90ab953a7 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.45.0rc1 \ + --hash=sha256:7d763966615bff2ed47b8aff335c7cf8c62851e4676fff353225b2b36aeab5cd +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.8.2 \ + --hash=sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.5 \ + --hash=sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.3 \ + --hash=sha256:3dbd698ddc8ebd415ed9f5558730677b6b07984e19769c8194c249145d19aa14 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.3 \ + --hash=sha256:962445e7cebadcbfbcd1daf973e853a832dcf7aba6320468fcf7e2cf5f943aec +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.4.4 \ + --hash=sha256:8ffb40b74400e4455785c2fa37eba434269149ec525fc8329858c862e4b35373 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.0.1 \ + --hash=sha256:837457e36a2ba1710c881fb69e1f79ce44fb81728c92ac378f70892a53af8ddb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.4 \ + --hash=sha256:32840f7f777b6bff79bb101159336e9b332bdbfba1495b8739e34d1d65cbc1c0 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.0rc1 \ + --hash=sha256:c4c254119723e707b9ab64b3a2d26d44c52560d928db8339001f78df1f1db875 +numpy==2.3.2 \ + --hash=sha256:c63d95dc9d67b676e9108fe0d2182987ccb0f11933c1e8959f42fa0da8d4fa56 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.101.0 \ + --hash=sha256:6539a446cce154f8d9fb42757acdfd3ed9357ab0d34fcac11096c461da87133b +opencv-python==4.11.0.86 \ + --hash=sha256:085ad9b77c18853ea66283e98affefe2de8cc4c1f43eda4c100cf9b2721142ec +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +overrides==7.7.0 \ + --hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.1 \ + --hash=sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.4 \ + --hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.2.0 \ + --hash=sha256:32c444d4c940887219cb80738317040363deefdfee4f354498cc0b6dab8978bd +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.32.3 \ + --hash=sha256:db56a7cb4898e173d62634e182f74bdff744c62be5470e0fe20df8d10f659af7 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.51 \ + --hash=sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.30 \ + --hash=sha256:bec3045f0285ac817c902ef98d6ece31d3e00a4604ef3fdde07d365c78bde23c +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-server==1.12.2 \ + --hash=sha256:750116459449184ba20811167cdf96f91296ae12f1f65ebd975c5c159388111b +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==2.0.15 \ + --hash=sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.0.0 \ + --hash=sha256:dce4199bf5f648a902ce37e7b3afa286f305cd2ef7a8b6ec907470ccb6c8b371 +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.6.1 \ + --hash=sha256:3d22490d9589bace566ad4f3455b61fa2209156f40e87e19e2c3cb64e9264950 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2024.11.6 \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.24.0 \ + --hash=sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a +rsa==4.7.2 \ + --hash=sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.1 \ + --hash=sha256:ca6d31fb10e04d50bfd2b50d66744729dbb512d4efd0223b864e2fdbfc4cee11 +scipy==1.16.1 \ + --hash=sha256:81929ed0fa7a5713fcdd8b2e6f73697d3b4c4816d090dd34ff937c20fa90e8ab +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.7.post2 \ + --hash=sha256:a2c48cd19e39bf87dae0b20a289fff44930458fc2ca2afa0f899058dc41e5545 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.0 \ + --hash=sha256:bc7155ca02fb4233abce843716b175619d95b94fb7b9ead4b15fc26453d8f646 +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soupsieve==2.7 \ + --hash=sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4 +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.0.7 \ + --hash=sha256:b725569bb8ddc7b0aab73d747d85312dc0456978370cc0f9b1a101c0fe4f076b +spyder-kernels==3.0.5 \ + --hash=sha256:9cc808e0ec4426b9ba911128e221fa2234e6c8d6e08526132e90112ff9c2bb7c +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.46.1 \ + --hash=sha256:dffa373230965f87ccc156abaff848d7d731920cf14106f3b99b1ea18076f728 +superqt==0.7.3 \ + --hash=sha256:8f7d141665b31baa484747f324fc9fc2d14223f2fefc92ffed6ea35c92221304 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.9.0 \ + --hash=sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.1 \ + --hash=sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.30.0 \ + --hash=sha256:3bf4f06b8decf8d3cf00af85f40a89824669e2d033bb32469d34840edcfc22a5 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.2 \ + --hash=sha256:fd8543355952f4052786ed4150acaf12e23117bd0f5bd03ea07de466bce646e7 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +uvicorn==0.34.2 \ + --hash=sha256:deb49af569084536d269fe0a6d67e3754f104cf03aba7c11c40f01aadf33c403 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.0 \ + --hash=sha256:2a06f242f4ba0cc563444ca3d1998959447477363a2d7e9b8b4d75d35cfd1669 +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.7.1 \ + --hash=sha256:e8647b659e53bd350d7c5a91c34dd4122ad6a3ca0bc41399d424a7c0273c7635 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2023.10.1 \ + --hash=sha256:6a4c38d3a9f89d3e77153eff9414b36a8ee0850c9e8b85796fd1b2a85b8dfd68 +yapf==0.40.1 \ + --hash=sha256:b8bfc1f280949153e795181768ca14ef43d7312629a06c43e7abd279323af313 +yarl==1.18.3 \ + --hash=sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c +yt-dlp==2025.2.19 \ + --hash=sha256:3ed218eaeece55e9d715afd41abc450dc406ee63bf79355169dfde312d38fdb8 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.21.0 \ + --hash=sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931 +zstandard==0.24.0 \ + --hash=sha256:d64899cc0f33a8f446f1e60bffc21fa88b99f0e8208750d9144ea717610a80ce diff --git a/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dot.txt b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dot.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dot.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dotb3.txt b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dotb3.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1dotb3.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_14_0_1free.txt b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1free.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1free.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.64-3_14_0_1freeb3.txt b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1freeb3.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.64-3_14_0_1freeb3.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_04/requir.wppmbuild.txt b/winpython/portable/cycle_2025_04/requir.wppmbuild.txt new file mode 100644 index 00000000..f1c6adf3 --- /dev/null +++ b/winpython/portable/cycle_2025_04/requir.wppmbuild.txt @@ -0,0 +1,68 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.1.0 \ + --hash=sha256:ad159f13428bc4acbf5541ad6dec511f91573b90fba04df61dafa2a1231cf649 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +requests==2.32.3 \ + --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +urllib3==2.4.0 \ + --hash=sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250802b2 \ + --hash=sha256:ed916dcefbc2d597a77cc74d459e8661c59584a690a7d4063d60976fb4d1499f diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dot.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dot.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dot.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dotb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dotb4.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0dotb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slim.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slim.toml new file mode 100644 index 00000000..c7bbfb18 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slim.toml @@ -0,0 +1,5854 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/28/260053893ca51b1f06e2fe652ee267cbfe359a2c4c8312dc0307a0f54579/adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.10.0" + +[[packages.wheels]] +name = "asgiref-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/9c/fc2331f538fbf7eedba64b2052e99ccf9ba9d6888e2f41441ee28847004b/asgiref-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "4.0.2" + +[[packages.wheels]] +name = "astroid-4.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/ac/a85b4bfb4cf53221513e27f33cc37ad158fce02ac291d18bee6b49ab477d/astroid-4.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.1" + +[[packages.wheels]] +name = "asttokens-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "6.2.2" + +[[packages.wheels]] +name = "cachetools-6.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/46/eb6eca305c77a4489affe1c5d8f4cae82f285d9addd8de4ec084a7184221/cachetools-6.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3d/b9/dcf5a68ac2ef89424657b03f751ca799861db097fa83bd52068bed198120/cython-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/d5/6b7ddda7713a788ab2d622c7267ec317718f2bdc746ce1fca49b7ff0e50f/duckdb-1.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.3.1" + +[[packages.wheels]] +name = "eval_type_backport-0.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/22/fdc2e30d43ff853720042fa15baa3e6122722be1a7950a98233ebb55cd71/eval_type_backport-0.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/1f/116013b200fbeba871046554d5d2a45fefa69a05c40e9cdfd0d4fff53edc/fonttools-4.61.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.4" + +[[packages.wheels]] +name = "guidata-3.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/e4/4adcf39f557dae5dfad2d184fa887ee2343cb8c042c7d2f4099030b5bb3a/guidata-3.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.3" + +[[packages.wheels]] +name = "joblib-1.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.1" + +[[packages.wheels]] +name = "jupyterlab-4.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/c3/acced767eecc11a70c65c45295db5396c4f0c1937874937d5a76d7b177b6/jupyterlab-4.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.13.0" + +[[packages.wheels]] +name = "keras-3.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/d2/c6734cbf15288d75722ed3eb9d8ebf9204e48379c08160fd40fcd58a0c8b/keras-3.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/c0/c81266c308e1449ed9197b059feea91205832a1cd37e12443c0f7d3e0743/librt-0.6.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/a7/d526ae86708cea531935ae777b6dbcabe7db52718e6401e0fb9c5edea80e/llvmlite-0.46.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/40/37612487cc8a437d4dd261b32ca21fe2d79510fe74af74e1f42becb1bdb8/matplotlib-3.10.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/56/53a8f70f562dfc466c766469133a8a4909f6c0012d83993143f2a9d48d2d/mypy-1.19.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e7/f8/5e88e5eda1fe58f7d146b73744f691d85dce76fb42e7ce3de53e49911da3/mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.13.0" + +[[packages.wheels]] +name = "narwhals-2.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/0d/1861d1599571974b15b025e12b142d8e6b42ad66c8a07a89cb0fc21f1e03/narwhals-2.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.1" + +[[packages.wheels]] +name = "notebook-7.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/86/ca516cb58ad2cb2064124d31cf0fd8b012fca64bebeb26da2d2ddf03fc79/notebook-7.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/f5/3800384a24eed1e4d524669cdbc0b9b8a628800bb1e90d7bd676e5f22581/numba-0.63.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/15/429c72d64323503fd42cc4ca8398930ded8aa8b3470df8a86b3bbae7a35c/ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "plotpy" +version = "2.8.2" + +[[packages.wheels]] +name = "plotpy-2.8.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/6d/642ab6d095b1c9bef44732cce89e82eef2fece54841c1798124a0349831d/plotpy-2.8.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.3" + +[[packages.wheels]] +name = "prince-0.16.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/86/8dd61a7715d39fe1051af1df350f99222935e17a7c7400a361dc54bd98b0/prince-0.16.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/f8/1d0bd75bf9328a3b826e24a16e5517cd7f9fbf8d34a3184a4566ef5a7f29/pyarrow-22.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.1" + +[[packages.wheels]] +name = "pybind11-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/8a/37362fc2b949d5f733a8b0f2ff51ba423914cabefe69f1d1b6aab710f5fe/pybind11-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "4.0.4" + +[[packages.wheels]] +name = "pylint-4.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/92/d40f5d937517cc489ad848fc4414ecccc7592e4686b9071e09e64f5e378e/pylint-4.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.14.0" + +[[packages.wheels]] +name = "python_lsp_server-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/cf/587f913335e3855e0ddca2aee7c3f9d5de2d75a1e23434891e9f74783bcd/python_lsp_server-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0" + +[[packages.wheels]] +name = "scikit_image-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8f/58/2b11b933097bc427e42b4a8b15f7de8f24f2bac1fd2779d2aea1431b2c31/scikit_image-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ac529eb9dbd5954f9aaa2e3fe9a3fd9661bfe24e134c688587d811a0233127f1" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/f9/9b7563caf3ec8873e17a31401858efab6b39a882daf6c1bfa88879c0aa11/scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.7.0" + +[[packages.wheels]] +name = "skrub-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/b2/6032bf79d0acdf57fbd4885ab33789fd21c6003487e91994626a1b106fba/skrub-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.2" + +[[packages.wheels]] +name = "spyder-6.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/01/43495f870890438a378d30bb57478be3f26a5f1d02f396eb52d08f83ed3e/spyder-6.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/51/665617fe4f8c6450f42a6d8d69243f9420f5677395572c2fe9d21b493b7b/sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.5.0" + +[[packages.wheels]] +name = "sspilib-0.5.0-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/6a/a11abf90172ff580ac2f9ade3496d868e05e851c4ecf487dd5baeb966b1d/sspilib-0.5.0-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/08/b79f0c614f38e566eebbdcff90c0bcacf3c6ba7a5bbb12183c09c29ca400/statsmodels-0.14.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233" + +[[packages]] +name = "streamlit" +version = "1.52.2" + +[[packages.wheels]] +name = "streamlit-1.52.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/95/6b7873f0267973ebd55ba9cd33a690b35a116f2779901ef6185a0e21864d/streamlit-1.52.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8" + +[[packages]] +name = "streamlit-bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "streamlit_bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/10/a9a233afb4f6285246512fe2d4ea62212b1c14d493a29ef35e0ee7993bc4/streamlit_bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.4" + +[[packages.wheels]] +name = "tornado-6.5.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.20.1" + +[[packages.wheels]] +name = "typer-0.20.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/52/1f2df7e7d1be3d65ddc2936d820d4a3d9777a54f4204f5ca46b8513eff77/typer-0.20.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.15" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/15/9bc32671e9a38b413a76d24722a2bf8784a132c043063a8f5152d390b0f9/xxhash-3.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slimb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slimb4.toml new file mode 100644 index 00000000..b48e6b3c --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0slimb4.toml @@ -0,0 +1,5854 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/28/260053893ca51b1f06e2fe652ee267cbfe359a2c4c8312dc0307a0f54579/adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3d/b9/dcf5a68ac2ef89424657b03f751ca799861db097fa83bd52068bed198120/cython-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/d5/6b7ddda7713a788ab2d622c7267ec317718f2bdc746ce1fca49b7ff0e50f/duckdb-1.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/1f/116013b200fbeba871046554d5d2a45fefa69a05c40e9cdfd0d4fff53edc/fonttools-4.61.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.3" + +[[packages.wheels]] +name = "guidata-3.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/6f/0572785acd9266fc3adb3245cec5e9d807adc7b0c612cb096bacd4b6eeac/guidata-3.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/c0/c81266c308e1449ed9197b059feea91205832a1cd37e12443c0f7d3e0743/librt-0.6.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/a7/d526ae86708cea531935ae777b6dbcabe7db52718e6401e0fb9c5edea80e/llvmlite-0.46.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/40/37612487cc8a437d4dd261b32ca21fe2d79510fe74af74e1f42becb1bdb8/matplotlib-3.10.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/56/53a8f70f562dfc466c766469133a8a4909f6c0012d83993143f2a9d48d2d/mypy-1.19.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e7/f8/5e88e5eda1fe58f7d146b73744f691d85dce76fb42e7ce3de53e49911da3/mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/f5/3800384a24eed1e4d524669cdbc0b9b8a628800bb1e90d7bd676e5f22581/numba-0.63.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/15/429c72d64323503fd42cc4ca8398930ded8aa8b3470df8a86b3bbae7a35c/ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "plotpy" +version = "2.8.2" + +[[packages.wheels]] +name = "plotpy-2.8.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/6d/642ab6d095b1c9bef44732cce89e82eef2fece54841c1798124a0349831d/plotpy-2.8.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.2" + +[[packages.wheels]] +name = "prince-0.16.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/fe/92068ae56c8a88ee9123234014233561917dcd5c56c26a2c99f014444d36/prince-0.16.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/f8/1d0bd75bf9328a3b826e24a16e5517cd7f9fbf8d34a3184a4566ef5a7f29/pyarrow-22.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0rc1" + +[[packages.wheels]] +name = "scikit_image-0.26.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/62/a87abbab7228bd64d815fdd20e46d50dbc2f564be44acfb5b3099d43ad66/scikit_image-0.26.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7a80ebd6b6ee3706f2f597d374c0850b4340f663c217b556319f9bcc4664fc37" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/f9/9b7563caf3ec8873e17a31401858efab6b39a882daf6c1bfa88879c0aa11/scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1" + +[[packages.wheels]] +name = "spyder-6.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/10/79cd23b5069d4aed2390cdffa831f99b45f5b4a8f7b272d7a887f5e487e1/spyder-6.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/51/665617fe4f8c6450f42a6d8d69243f9420f5677395572c2fe9d21b493b7b/sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/a8/bbd5dfbeca085dce4430a2b419f63ef54f7f3814541b0dc79671a9d19c47/sspilib-0.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/08/b79f0c614f38e566eebbdcff90c0bcacf3c6ba7a5bbb12183c09c29ca400/statsmodels-0.14.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233" + +[[packages]] +name = "streamlit" +version = "1.52.1" + +[[packages.wheels]] +name = "streamlit-1.52.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/d4/cdafd4cc940937410f465ca7a77dd34237182c2ddece624e08db959496f8/streamlit-1.52.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c" + +[[packages]] +name = "streamlit-bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "streamlit_bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/10/a9a233afb4f6285246512fe2d4ea62212b1c14d493a29ef35e0ee7993bc4/streamlit_bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.3" + +[[packages.wheels]] +name = "tornado-6.5.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/98/4f7f938606e21d0baea8c6c39a7c8e95bdf8e50b0595b1bb6f0de2af7a6e/tornado-6.5.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/15/9bc32671e9a38b413a76d24722a2bf8784a132c043063a8f5152d390b0f9/xxhash-3.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl_wheels.toml new file mode 100644 index 00000000..b2d04ba3 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whl_wheels.toml @@ -0,0 +1,5634 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/28/260053893ca51b1f06e2fe652ee267cbfe359a2c4c8312dc0307a0f54579/adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.10.0" + +[[packages.wheels]] +name = "asgiref-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/9c/fc2331f538fbf7eedba64b2052e99ccf9ba9d6888e2f41441ee28847004b/asgiref-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "4.0.2" + +[[packages.wheels]] +name = "astroid-4.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/ac/a85b4bfb4cf53221513e27f33cc37ad158fce02ac291d18bee6b49ab477d/astroid-4.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.1" + +[[packages.wheels]] +name = "asttokens-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "6.2.2" + +[[packages.wheels]] +name = "cachetools-6.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/46/eb6eca305c77a4489affe1c5d8f4cae82f285d9addd8de4ec084a7184221/cachetools-6.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3d/b9/dcf5a68ac2ef89424657b03f751ca799861db097fa83bd52068bed198120/cython-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/d5/6b7ddda7713a788ab2d622c7267ec317718f2bdc746ce1fca49b7ff0e50f/duckdb-1.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.3.1" + +[[packages.wheels]] +name = "eval_type_backport-0.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/22/fdc2e30d43ff853720042fa15baa3e6122722be1a7950a98233ebb55cd71/eval_type_backport-0.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/1f/116013b200fbeba871046554d5d2a45fefa69a05c40e9cdfd0d4fff53edc/fonttools-4.61.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.4" + +[[packages.wheels]] +name = "guidata-3.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/e4/4adcf39f557dae5dfad2d184fa887ee2343cb8c042c7d2f4099030b5bb3a/guidata-3.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.3" + +[[packages.wheels]] +name = "joblib-1.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.1" + +[[packages.wheels]] +name = "jupyterlab-4.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/c3/acced767eecc11a70c65c45295db5396c4f0c1937874937d5a76d7b177b6/jupyterlab-4.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.13.0" + +[[packages.wheels]] +name = "keras-3.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/d2/c6734cbf15288d75722ed3eb9d8ebf9204e48379c08160fd40fcd58a0c8b/keras-3.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/c0/c81266c308e1449ed9197b059feea91205832a1cd37e12443c0f7d3e0743/librt-0.6.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/a7/d526ae86708cea531935ae777b6dbcabe7db52718e6401e0fb9c5edea80e/llvmlite-0.46.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/40/37612487cc8a437d4dd261b32ca21fe2d79510fe74af74e1f42becb1bdb8/matplotlib-3.10.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/56/53a8f70f562dfc466c766469133a8a4909f6c0012d83993143f2a9d48d2d/mypy-1.19.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.13.0" + +[[packages.wheels]] +name = "narwhals-2.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/0d/1861d1599571974b15b025e12b142d8e6b42ad66c8a07a89cb0fc21f1e03/narwhals-2.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.1" + +[[packages.wheels]] +name = "notebook-7.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/86/ca516cb58ad2cb2064124d31cf0fd8b012fca64bebeb26da2d2ddf03fc79/notebook-7.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/f5/3800384a24eed1e4d524669cdbc0b9b8a628800bb1e90d7bd676e5f22581/numba-0.63.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/15/429c72d64323503fd42cc4ca8398930ded8aa8b3470df8a86b3bbae7a35c/ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "plotpy" +version = "2.8.2" + +[[packages.wheels]] +name = "plotpy-2.8.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/6d/642ab6d095b1c9bef44732cce89e82eef2fece54841c1798124a0349831d/plotpy-2.8.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.3" + +[[packages.wheels]] +name = "prince-0.16.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/86/8dd61a7715d39fe1051af1df350f99222935e17a7c7400a361dc54bd98b0/prince-0.16.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/b4/46310463b4f6ceef310f8348786f3cff181cea671578e3d9743ba61a459e/protobuf-6.33.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/f8/1d0bd75bf9328a3b826e24a16e5517cd7f9fbf8d34a3184a4566ef5a7f29/pyarrow-22.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.1" + +[[packages.wheels]] +name = "pybind11-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/8a/37362fc2b949d5f733a8b0f2ff51ba423914cabefe69f1d1b6aab710f5fe/pybind11-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "4.0.4" + +[[packages.wheels]] +name = "pylint-4.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/92/d40f5d937517cc489ad848fc4414ecccc7592e4686b9071e09e64f5e378e/pylint-4.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.14.0" + +[[packages.wheels]] +name = "python_lsp_server-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/cf/587f913335e3855e0ddca2aee7c3f9d5de2d75a1e23434891e9f74783bcd/python_lsp_server-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0" + +[[packages.wheels]] +name = "scikit_image-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8f/58/2b11b933097bc427e42b4a8b15f7de8f24f2bac1fd2779d2aea1431b2c31/scikit_image-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ac529eb9dbd5954f9aaa2e3fe9a3fd9661bfe24e134c688587d811a0233127f1" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/f9/9b7563caf3ec8873e17a31401858efab6b39a882daf6c1bfa88879c0aa11/scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.7.0" + +[[packages.wheels]] +name = "skrub-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/b2/6032bf79d0acdf57fbd4885ab33789fd21c6003487e91994626a1b106fba/skrub-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.2" + +[[packages.wheels]] +name = "spyder-6.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/01/43495f870890438a378d30bb57478be3f26a5f1d02f396eb52d08f83ed3e/spyder-6.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.5.0" + +[[packages.wheels]] +name = "sspilib-0.5.0-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/6a/a11abf90172ff580ac2f9ade3496d868e05e851c4ecf487dd5baeb966b1d/sspilib-0.5.0-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/08/b79f0c614f38e566eebbdcff90c0bcacf3c6ba7a5bbb12183c09c29ca400/statsmodels-0.14.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233" + +[[packages]] +name = "streamlit" +version = "1.52.2" + +[[packages.wheels]] +name = "streamlit-1.52.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/95/6b7873f0267973ebd55ba9cd33a690b35a116f2779901ef6185a0e21864d/streamlit-1.52.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.4" + +[[packages.wheels]] +name = "tornado-6.5.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.20.1" + +[[packages.wheels]] +name = "typer-0.20.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/52/1f2df7e7d1be3d65ddc2936d820d4a3d9777a54f4204f5ca46b8513eff77/typer-0.20.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.15" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/15/9bc32671e9a38b413a76d24722a2bf8784a132c043063a8f5152d390b0f9/xxhash-3.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4_wheels.toml new file mode 100644 index 00000000..2b492009 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_11_0whlb4_wheels.toml @@ -0,0 +1,5645 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/28/260053893ca51b1f06e2fe652ee267cbfe359a2c4c8312dc0307a0f54579/adbc_driver_manager-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3d/b9/dcf5a68ac2ef89424657b03f751ca799861db097fa83bd52068bed198120/cython-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/d5/6b7ddda7713a788ab2d622c7267ec317718f2bdc746ce1fca49b7ff0e50f/duckdb-1.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/1f/116013b200fbeba871046554d5d2a45fefa69a05c40e9cdfd0d4fff53edc/fonttools-4.61.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.3" + +[[packages.wheels]] +name = "guidata-3.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/6f/0572785acd9266fc3adb3245cec5e9d807adc7b0c612cb096bacd4b6eeac/guidata-3.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/c0/c81266c308e1449ed9197b059feea91205832a1cd37e12443c0f7d3e0743/librt-0.6.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/a7/d526ae86708cea531935ae777b6dbcabe7db52718e6401e0fb9c5edea80e/llvmlite-0.46.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/40/37612487cc8a437d4dd261b32ca21fe2d79510fe74af74e1f42becb1bdb8/matplotlib-3.10.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/56/53a8f70f562dfc466c766469133a8a4909f6c0012d83993143f2a9d48d2d/mypy-1.19.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/f5/3800384a24eed1e4d524669cdbc0b9b8a628800bb1e90d7bd676e5f22581/numba-0.63.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/15/429c72d64323503fd42cc4ca8398930ded8aa8b3470df8a86b3bbae7a35c/ormsgpack-1.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "plotpy" +version = "2.8.2" + +[[packages.wheels]] +name = "plotpy-2.8.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/6d/642ab6d095b1c9bef44732cce89e82eef2fece54841c1798124a0349831d/plotpy-2.8.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.2" + +[[packages.wheels]] +name = "prince-0.16.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/fe/92068ae56c8a88ee9123234014233561917dcd5c56c26a2c99f014444d36/prince-0.16.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/b4/46310463b4f6ceef310f8348786f3cff181cea671578e3d9743ba61a459e/protobuf-6.33.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/f8/1d0bd75bf9328a3b826e24a16e5517cd7f9fbf8d34a3184a4566ef5a7f29/pyarrow-22.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c3/c4/705678c9c4200130290b3a104b45c0cc10aaa48fcef3b2585b34e34ab3e1/pyogrio-0.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0rc1" + +[[packages.wheels]] +name = "scikit_image-0.26.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/62/a87abbab7228bd64d815fdd20e46d50dbc2f564be44acfb5b3099d43ad66/scikit_image-0.26.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7a80ebd6b6ee3706f2f597d374c0850b4340f663c217b556319f9bcc4664fc37" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1c/f9/9b7563caf3ec8873e17a31401858efab6b39a882daf6c1bfa88879c0aa11/scikit_learn-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1" + +[[packages.wheels]] +name = "spyder-6.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/10/79cd23b5069d4aed2390cdffa831f99b45f5b4a8f7b272d7a887f5e487e1/spyder-6.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/a8/bbd5dfbeca085dce4430a2b419f63ef54f7f3814541b0dc79671a9d19c47/sspilib-0.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/08/b79f0c614f38e566eebbdcff90c0bcacf3c6ba7a5bbb12183c09c29ca400/statsmodels-0.14.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233" + +[[packages]] +name = "streamlit" +version = "1.52.1" + +[[packages.wheels]] +name = "streamlit-1.52.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/d4/cdafd4cc940937410f465ca7a77dd34237182c2ddece624e08db959496f8/streamlit-1.52.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.3" + +[[packages.wheels]] +name = "tornado-6.5.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/98/4f7f938606e21d0baea8c6c39a7c8e95bdf8e50b0595b1bb6f0de2af7a6e/tornado-6.5.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/15/9bc32671e9a38b413a76d24722a2bf8784a132c043063a8f5152d390b0f9/xxhash-3.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1dotb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1dotb1.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1dotb1.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1slimb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1slimb1.toml new file mode 100644 index 00000000..13d5c111 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1slimb1.toml @@ -0,0 +1,5678 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.0" + +[[packages.wheels]] +name = "duckdb-1.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/b2/98fb89ae81611855f35984e96f648d871f3967bb3f524b51d1372d052f0c/duckdb-1.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.21.0" + +[[packages.wheels]] +name = "holoviews-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/75/d451b9a0ab3a9c0b2c7d1d3cf0bcf797ccac420f3479476f9867e1737d39/holoviews-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.10" + +[[packages.wheels]] +name = "mistralai-1.9.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/40/646448b5ad66efec097471bd5ab25f5b08360e3f34aecbe5c4fcc6845c01/mistralai-1.9.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf0a2906e254bb4825209a26e1957e6e0bacbbe61875bd22128dc3d5d51a7b0a" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.107.2" + +[[packages.wheels]] +name = "openai-1.107.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/65/e51a77a368eed7b9cc22ce394087ab43f13fa2884724729b716adf2da389/openai-1.107.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.2" + +[[packages.wheels]] +name = "pandas-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/3c/f2af1ce8840ef648584a6156489636b5692c162771918aa95707c165ad2b/pandas-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.1" + +[[packages.wheels]] +name = "panel-1.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/55/150c28bf3e50c7d65f763f7cc060740eada65817c40e6e5dead50fced228/panel-1.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1e0f1fdfeba50702af95650c3b54bfaa68ebbff309147a2e1c25af8a67d9a2d" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1whlb1_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1whlb1_wheels.toml new file mode 100644 index 00000000..56bbe07a --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_7_1whlb1_wheels.toml @@ -0,0 +1,5491 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.0" + +[[packages.wheels]] +name = "duckdb-1.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/b2/98fb89ae81611855f35984e96f648d871f3967bb3f524b51d1372d052f0c/duckdb-1.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.7" + +[[packages.wheels]] +name = "ipympl-0.9.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/6b/21c62f1b2b5e18c6553f7364487dfdf7eb7952b1000a1b7863c1f97819e9/ipympl-0.9.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.10" + +[[packages.wheels]] +name = "mistralai-1.9.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/40/646448b5ad66efec097471bd5ab25f5b08360e3f34aecbe5c4fcc6845c01/mistralai-1.9.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf0a2906e254bb4825209a26e1957e6e0bacbbe61875bd22128dc3d5d51a7b0a" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "1.107.2" + +[[packages.wheels]] +name = "openai-1.107.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/65/e51a77a368eed7b9cc22ce394087ab43f13fa2884724729b716adf2da389/openai-1.107.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.2" + +[[packages.wheels]] +name = "pandas-2.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/3c/f2af1ce8840ef648584a6156489636b5692c162771918aa95707c165ad2b/pandas-2.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.2" + +[[packages.wheels]] +name = "pg8000-1.31.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/a0/2b30d52017c4ced8fc107386666ea7573954eb708bf66121f0229df05d41/pg8000-1.31.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydantic" +version = "2.11.7" + +[[packages.wheels]] +name = "pydantic-2.11.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.5" + +[[packages.wheels]] +name = "pythonqwt-0.14.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/e9/1e6e93e1aaaec57d6ef427291e8fb3d9f18ebd91147c24f2b241b01e2def/pythonqwt-0.14.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.0.0" + +[[packages.wheels]] +name = "rich-14.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb1.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb1.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb2.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb2.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb3.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0dotb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb1.toml new file mode 100644 index 00000000..fdc85481 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb1.toml @@ -0,0 +1,5700 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.1" + +[[packages.wheels]] +name = "duckdb-1.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/79/4f544d73fcc0513b71296cb3ebb28a227d22e80dec27204977039b9fa875/duckdb-1.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.21.0" + +[[packages.wheels]] +name = "holoviews-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/75/d451b9a0ab3a9c0b2c7d1d3cf0bcf797ccac420f3479476f9867e1737d39/holoviews-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "2.3.0" + +[[packages.wheels]] +name = "openai-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5b/4be258ff072ed8ee15f6bfd8d5a1a4618aa4704b127c0c5959212ad177d6/openai-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.2" + +[[packages.wheels]] +name = "panel-1.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/be/ce3368145f22d64095e03591deeb26986b749b0b1c8373d426f8312c3a96/panel-1.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9cb26baca4263bf32432328fa6a37b2b09922af99a1a009abe1f12287f39836" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pipdeptree" +version = "2.29.0" + +[[packages.wheels]] +name = "pipdeptree-2.29.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/97/ad47810045455809314581cd7e0c879fed311e41a9d3e417558dd122ab7d/pipdeptree-2.29.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.9" + +[[packages.wheels]] +name = "pydantic-2.11.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/d3/108f2006987c58e76691d5ae5d200dd3e0f532cb4e5fa3560751c3a1feba/pydantic-2.11.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb2.toml new file mode 100644 index 00000000..abe2af1a --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb2.toml @@ -0,0 +1,5700 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.12.15" + +[[packages.wheels]] +name = "aiohttp-3.12.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/8e/78ee35774201f38d5e1ba079c9958f7629b1fd079459aea9467441dbfbf5/aiohttp-3.12.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1a649001580bdb37c6fdb1bebbd7e3bc688e8ec2b5c6f52edbb664662b17dc84" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.8.3" + +[[packages.wheels]] +name = "certifi-2025.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.1" + +[[packages.wheels]] +name = "duckdb-1.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/79/4f544d73fcc0513b71296cb3ebb28a227d22e80dec27204977039b9fa875/duckdb-1.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "holoviews" +version = "1.21.0" + +[[packages.wheels]] +name = "holoviews-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/75/d451b9a0ab3a9c0b2c7d1d3cf0bcf797ccac420f3479476f9867e1737d39/holoviews-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "3.0.0" + +[[packages.wheels]] +name = "markdown_it_py-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdit-py-plugins" +version = "0.4.2" + +[[packages.wheels]] +name = "mdit_py_plugins-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.2.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/4b/4f5462a81d046bb54bbb62ffbcea654e78f3ae2a64eb24a14c2872c4d75e/mysql_connector_python-9.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.8.0" + +[[packages.wheels]] +name = "narwhals-2.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/86/ac808ecb94322a3f1ea31627d13ab3e50dd4333564d711e0e481ad0f4586/narwhals-2.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6304856676ba4a79fd34148bda63aed8060dd6edb1227edf3659ce5e091de73c" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "2.3.0" + +[[packages.wheels]] +name = "openai-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5b/4be258ff072ed8ee15f6bfd8d5a1a4618aa4704b127c0c5959212ad177d6/openai-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.2" + +[[packages.wheels]] +name = "panel-1.8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/be/ce3368145f22d64095e03591deeb26986b749b0b1c8373d426f8312c3a96/panel-1.8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9cb26baca4263bf32432328fa6a37b2b09922af99a1a009abe1f12287f39836" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pipdeptree" +version = "2.29.0" + +[[packages.wheels]] +name = "pipdeptree-2.29.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/97/ad47810045455809314581cd7e0c879fed311e41a9d3e417558dd122ab7d/pipdeptree-2.29.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.11.9" + +[[packages.wheels]] +name = "pydantic-2.11.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/d3/108f2006987c58e76691d5ae5d200dd3e0f532cb4e5fa3560751c3a1feba/pydantic-2.11.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb3.toml new file mode 100644 index 00000000..ec74e4f0 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0slimb3.toml @@ -0,0 +1,5755 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.72.0" + +[[packages.wheels]] +name = "anthropic-0.72.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/b7/160d4fb30080395b4143f1d1a4f6c646ba9105561108d2a434b606c03579/anthropic-0.72.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxopt" +version = "1.3.2" + +[[packages.wheels]] +name = "cvxopt-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b9/55/90b40b489a235a9f35a532eb77cec81782e466779d9a531ffda6b2f99410/cvxopt-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.1" + +[[packages.wheels]] +name = "cython-3.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e4/29/4408c3486ff380a2d6ae0d4b71da5195efcef3c4360017113ee7d1cb7335/cython-3.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.2" + +[[packages.wheels]] +name = "duckdb-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/58/b7/8d3a58b5ebfb9e79ed4030a0f2fbd7e404c52602e977b1e7ab51651816c7/duckdb-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f7c61617d2b1da3da5d7e215be616ad45aa3221c4b9e2c4d1c28ed09bc3c1c4" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.11.0" + +[[packages.wheels]] +name = "faker-37.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/46/8f4097b55e43af39e8e71e1f7aec59ff7398bca54d975c30889bc844719d/faker-37.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.121.3" + +[[packages.wheels]] +name = "fastapi-0.121.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/b6/4f620d7720fc0a754c8c1b7501d73777f6ba43b57c8ab99671f4d7441eb8/fastapi-0.121.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/a9/be7219fc64a6026cc0aded17fa3720f9277001c185434230bd351bf678e6/fonttools-4.59.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a72155928d7053bbde499d32a9c77d3f0f3d29ae72b5a121752481bcbd71e50f" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.50.1" + +[[packages.wheels]] +name = "google_genai-1.50.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/6b/78a7588d9a4f6c8c8ed326a32385d0566a3262c91c3f7a005e4231207894/google_genai-1.50.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.34.1" + +[[packages.wheels]] +name = "groq-0.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/64/592078e354946265430f4fbd337271338245531e14504a6c3623dcae59ad/groq-0.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25" + +[[packages]] +name = "guidata" +version = "3.13.1" + +[[packages.wheels]] +name = "guidata-3.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/3f/c62f76f88ce523ebeb80a25dc46c82ef600882624fd07788019b6500748a/guidata-3.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.0" + +[[packages.wheels]] +name = "holoviews-1.22.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/3d/e60b64b6d8af103739914e1d3e1e4bb3b464a4ec6435aa146ff63a24dc3c/holoviews-1.22.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.1.4" + +[[packages.wheels]] +name = "huggingface_hub-1.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/3f/969137c9d9428ed8bf171d27604243dd950a47cac82414826e2aebbc0a4c/huggingface_hub-1.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.7.0" + +[[packages.wheels]] +name = "ipython-9.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/aa/62893d6a591d337aa59dcc4c6f6c842f1fe20cd72c8c5c1f980255243252/ipython-9.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.44" + +[[packages.wheels]] +name = "langsmith-0.4.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/78/7d00da455307c78ebfa1fee733f82d9f27a511fcc9fd62bb3e6e67cf8dde/langsmith-0.4.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.46.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/ae/3a3e17d5ca1f67f060e8f54f7a8e4c3b60fe417abe5b91b2a2d4482de369/llvmlite-0.46.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d3782624374ec98d30d6e89c078c7571d3022d89cbb2703038b409604c7a8a8" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "magika" +version = "0.6.2" + +[[packages.wheels]] +name = "magika-0.6.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/1f/28e412d0ccedc068fbccdae6a6233faaa97ec3e5e2ffd242e49655b10064/magika-0.6.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markitdown" +version = "0.1.2" + +[[packages.wheels]] +name = "markitdown-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/33/d52d06b44c28e0db5c458690a4356e6abbb866f4abc00c0cf4eebb90ca78/markitdown-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.7" + +[[packages.wheels]] +name = "matplotlib-3.10.7-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e1/b6/23064a96308b9aeceeffa65e96bcde459a2ea4934d311dee20afde7407a0/matplotlib-3.10.7-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "744991e0cc863dd669c8dc9136ca4e6e0082be2070b9d793cbd64bec872a6815" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.18.2" + +[[packages.wheels]] +name = "mypy-1.18.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/cf/ac0f2c7e9d0ea3c75cd99dff7aec1c9df4a1376537cb90e4c882267ee7e9/mypy-1.18.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e2785a84b34a72ba55fb5daf079a1003a34c05b22238da94fcae2bbe46f3544" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e7/f8/5e88e5eda1fe58f7d146b73744f691d85dce76fb42e7ce3de53e49911da3/mysql_connector_python-9.5.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0rc1" + +[[packages.wheels]] +name = "numba-0.63.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/c0/12525f1b1f95001fa4986cdc9f6ee70da5c43e7bbc37e295937eb871fc29/numba-0.63.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59182b5a8c5a6feadbfc24626a78aaa09c1ec8a2a63561ea3fdc683eaa25dee1" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.8.1" + +[[packages.wheels]] +name = "openai-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/4f/dbc0c124c40cb390508a82770fb9f6e3ed162560181a85089191a851c59a/openai-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.3" + +[[packages.wheels]] +name = "panel-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/f6/6dd8932f59f0e1e2649a2b2ae4a9e849218aa3d6ae8fdbbd01f5457b3b9b/panel-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.35.2" + +[[packages.wheels]] +name = "polars-1.35.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/9a/24e4b890c7ee4358964aa92c4d1865df0e8831f7df6abaa3a39914521724/polars-1.35.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e" + +[[packages]] +name = "polars-runtime-32" +version = "1.35.2" + +[[packages.wheels]] +name = "polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/dc/40/96a808ca5cc8707894e196315227f04a0c82136b7fb25570bc51ea33b88d/polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.4" + +[[packages.wheels]] +name = "pydantic-2.12.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.6" + +[[packages.wheels]] +name = "ruff-0.14.6-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/02/82240553b77fd1341f80ebb3eaae43ba011c7a91b4224a9f317d8e6591af/ruff-0.14.6-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1rc1" + +[[packages.wheels]] +name = "spyder-6.1.1rc1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/3d/184dc52d19612451f8f179aa18079342a4910c205ceb16c12187a20dcc18/spyder-6.1.1rc1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/51/665617fe4f8c6450f42a6d8d69243f9420f5677395572c2fe9d21b493b7b/sqlalchemy-2.0.44-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/a8/bbd5dfbeca085dce4430a2b419f63ef54f7f3814541b0dc79671a9d19c47/sspilib-0.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.51.0" + +[[packages.wheels]] +name = "streamlit-1.51.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/60/868371b6482ccd9ef423c6f62650066cf8271fdb2ee84f192695ad6b7a96/streamlit-1.51.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4008b029f71401ce54946bb09a6a3e36f4f7652cbb48db701224557738cfda38" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb1_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb1_wheels.toml new file mode 100644 index 00000000..6521b6f5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb1_wheels.toml @@ -0,0 +1,5513 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.11.18" + +[[packages.wheels]] +name = "aiohttp-3.11.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1e/3c/143831b32cd23b5263a995b2a1794e10aa42f8a895aae5074c20fda36c07/aiohttp-3.11.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01" + +[[packages]] +name = "aiosignal" +version = "1.3.2" + +[[packages.wheels]] +name = "aiosignal-1.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.10.0" + +[[packages.wheels]] +name = "anyio-4.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.3.0" + +[[packages.wheels]] +name = "attrs-25.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.13.4" + +[[packages.wheels]] +name = "beautifulsoup4-4.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.4.26" + +[[packages.wheels]] +name = "certifi-2025.4.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.2" + +[[packages.wheels]] +name = "charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.2" + +[[packages.wheels]] +name = "contourpy-1.3.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.14" + +[[packages.wheels]] +name = "debugpy-1.8.14-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/62/a7b4a57013eac4ccaef6977966e6bec5c63906dd25a86e35f155952e29a1/debugpy-1.8.14-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.1" + +[[packages.wheels]] +name = "duckdb-1.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/79/4f544d73fcc0513b71296cb3ebb28a227d22e80dec27204977039b9fa875/duckdb-1.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.0" + +[[packages.wheels]] +name = "executing-2.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.1" + +[[packages.wheels]] +name = "fastjsonschema-2.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.10" + +[[packages.wheels]] +name = "idna-3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.0" + +[[packages.wheels]] +name = "json5-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9f/3500910d5a98549e3098807493851eeef2b89cdd3032227558a104dfe926/json5-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.4.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.8.1" + +[[packages.wheels]] +name = "jupyter_core-5.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.2" + +[[packages.wheels]] +name = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.3" + +[[packages.wheels]] +name = "mistune-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.5.0" + +[[packages.wheels]] +name = "narwhals-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/5a/22741c5c0e5f6e8050242bfc2052ba68bc94b1735ed5bca35404d136d6ec/narwhals-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "2.3.0" + +[[packages.wheels]] +name = "openai-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5b/4be258ff072ed8ee15f6bfd8d5a1a4618aa4704b127c0c5959212ad177d6/openai-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "pipdeptree" +version = "2.29.0" + +[[packages.wheels]] +name = "pipdeptree-2.29.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/97/ad47810045455809314581cd7e0c879fed311e41a9d3e417558dd122ab7d/pipdeptree-2.29.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.0.0" + +[[packages.wheels]] +name = "psutil-7.0.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydantic" +version = "2.11.9" + +[[packages.wheels]] +name = "pydantic-2.11.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/d3/108f2006987c58e76691d5ae5d200dd3e0f532cb4e5fa3560751c3a1feba/pydantic-2.11.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.3" + +[[packages.wheels]] +name = "pyparsing-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.2" + +[[packages.wheels]] +name = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.36.2" + +[[packages.wheels]] +name = "referencing-0.36.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.4" + +[[packages.wheels]] +name = "requests-2.32.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.13.0" + +[[packages.wheels]] +name = "rope-1.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/d0/e213e5adfa162e437dff3669131dc476043fc3a22fe99ef891516100610d/rope-1.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c" + +[[packages]] +name = "rpds-py" +version = "0.26.0" + +[[packages.wheels]] +name = "rpds_py-0.26.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20240316" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20240316-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/1b/af4f4c4f3f7339a4b7eb3c0ab13416db98f8ac09de3399129ee5fdfa282b/types_python_dateutil-2.9.0.20240316-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.13.2" + +[[packages.wheels]] +name = "typing_extensions-4.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.8.0" + +[[packages.wheels]] +name = "websocket_client-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2_wheels.toml new file mode 100644 index 00000000..e955ae89 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb2_wheels.toml @@ -0,0 +1,5513 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.12.15" + +[[packages.wheels]] +name = "aiohttp-3.12.15-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/8e/78ee35774201f38d5e1ba079c9958f7629b1fd079459aea9467441dbfbf5/aiohttp-3.12.15-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1a649001580bdb37c6fdb1bebbd7e3bc688e8ec2b5c6f52edbb664662b17dc84" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.64.0" + +[[packages.wheels]] +name = "anthropic-0.64.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/b2/2d268bcd5d6441df9dc0ebebc67107657edb8b0150d3fda1a5b81d1bec45/anthropic-0.64.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.18" + +[[packages.wheels]] +name = "anywidget-0.9.18-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/f0/09a30ca0551af20c7cefa7464b7ccb6f5407a550b83c4dcb15c410814849/anywidget-0.9.18-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.2" + +[[packages.wheels]] +name = "argcomplete-3.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/da/e42d7a9d8dd33fa775f467e4028a47936da2f01e4b0e561f9ba0d74cb0ca/argcomplete-3.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.0" + +[[packages.wheels]] +name = "astropy-7.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/d9c55247172f7156696d85c9146b64b41c30405bf86b775a731bed4d52f8/astropy-7.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.6.9.0.39.3" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/18/83a74b38e1cfd2291f43daf0cf9ea59cd8dd8ded912c2e56141e6224d708/astropy_iers_data-0.2025.6.9.0.39.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.34.0" + +[[packages.wheels]] +name = "azure_core-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/9e/5c87b49f65bb16571599bc789857d0ded2f53014d3392bc88a5d1f3ad779/azure_core-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6" + +[[packages]] +name = "azure-cosmos" +version = "4.9.0" + +[[packages.wheels]] +name = "azure_cosmos-4.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/dc/380f843744535497acd0b85aacb59565c84fc28bf938c8d6e897a858cd95/azure_cosmos-4.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe" + +[[packages]] +name = "azure-identity" +version = "1.23.0" + +[[packages.wheels]] +name = "azure_identity-1.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/16/a51d47780f41e4b87bb2d454df6aea90a44a346e918ac189d3700f3d728d/azure_identity-1.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.9.0" + +[[packages.wheels]] +name = "black-25.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/17/5c253aa80a0639ccc427a5c7144534b661505ae2b5a10b77ebe13fa25334/black-25.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.0" + +[[packages.wheels]] +name = "bokeh-3.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/96/9a/8e641b5415e12036d8a206147b8229d917a767b7d939521458d90feddcf5/bokeh-3.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.1.0" + +[[packages.wheels]] +name = "Brotli-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.8.3" + +[[packages.wheels]] +name = "certifi-2025.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "cohere" +version = "5.18.0" + +[[packages.wheels]] +name = "cohere-5.18.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/9b/3dc80542e60c711d57777b836a64345dda28f826c14fd64d9123278fcbfe/cohere-5.18.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/ef/f179b5a46185bc5550c07b328d687ee32251963a3a93e869b75fbf97181c/cython-3.1.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2" + +[[packages]] +name = "cytoolz" +version = "1.0.1" + +[[packages.wheels]] +name = "cytoolz-1.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/eb/dde173cf2357084ca9423950be1f2f11ab11d65d8bd30165bfb8fd4213e9/cytoolz-1.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297" + +[[packages]] +name = "dask" +version = "2025.7.0" + +[[packages.wheels]] +name = "dask-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/f9/3e04725358c17329652da8c1b2dbd88de723f3dc78bf52ca6d28d52c9279/dask-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae" + +[[packages]] +name = "datasette" +version = "0.65.1" + +[[packages.wheels]] +name = "datasette-0.65.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/f7/fc15b9ddc7a2cafe546f0e2696d71940d7604a128e2f903e98238c3435f7/datasette-0.65.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.7.0" + +[[packages.wheels]] +name = "distributed-2025.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/dc/9f033526ed98b65cda8adbd10b6eeeca0659203f67bd3e065ce172008887/distributed-2025.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.1" + +[[packages.wheels]] +name = "duckdb-1.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/79/4f544d73fcc0513b71296cb3ebb28a227d22e80dec27204977039b9fa875/duckdb-1.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.4.0" + +[[packages.wheels]] +name = "faker-37.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/5e/c8c3c5ea0896ab747db2e2889bf5a6f618ed291606de6513df56ad8670a8/faker-37.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533" + +[[packages]] +name = "fasta2a" +version = "0.2.9" + +[[packages.wheels]] +name = "fasta2a-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/df/dd967535662ecc9e101a7d6c0c643a055aabc3de47411c31c1dd624356c8/fasta2a-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e" + +[[packages]] +name = "fastapi" +version = "0.118.0" + +[[packages.wheels]] +name = "fastapi-0.118.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/20/54e2bdaad22ca91a59455251998d43094d5c3d3567c52c7c04774b3f43f2/fastapi-0.118.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855" + +[[packages]] +name = "fastavro" +version = "1.11.1" + +[[packages.wheels]] +name = "fastavro-1.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/51/38cbe243d5facccab40fc43a4c17db264c261be955ce003803d25f0da2c3/fastavro-1.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.58.5" + +[[packages.wheels]] +name = "fonttools-4.58.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/a3/21e921b16cb9c029d3308e0cb79c9a937e9ff1fc1ee28c2419f0957b9e7c/fonttools-4.58.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.7.0" + +[[packages.wheels]] +name = "frozenlist-1.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.40.3" + +[[packages.wheels]] +name = "google_auth-2.40.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/63/b19553b658a1692443c62bd07e5868adaa0ad746a0751ba62c59568cd45b/google_auth-2.40.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca" + +[[packages]] +name = "google-genai" +version = "1.31.0" + +[[packages.wheels]] +name = "google_genai-1.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/27/1525bc9cbec58660f0842ebcbfe910a1dde908c2672373804879666e0bb8/google_genai-1.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.3" + +[[packages.wheels]] +name = "greenlet-3.2.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/1a/199f9587e8cb08a0658f9c30f3799244307614148ffe8b1e3aa22f324dea/greenlet-3.2.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.31.0" + +[[packages.wheels]] +name = "groq-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/f8/14672d69a91495f43462c5490067eeafc30346e81bda1a62848e897f9bc3/groq-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f" + +[[packages]] +name = "guidata" +version = "3.12.0" + +[[packages.wheels]] +name = "guidata-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/d8/8ebcf690f4f7c828ac97630c48799fbde56847ece5ece7ab513532b3e221/guidata-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.12.1" + +[[packages.wheels]] +name = "h5py-3.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/51/0bbf3663062b2eeee78aa51da71e065f8a0a6e3cb950cc7020b4444999e6/h5py-3.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "0.35.3" + +[[packages.wheels]] +name = "huggingface_hub-0.35.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.0" + +[[packages.wheels]] +name = "invoke-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/66/7f8c48009c72d73bc6bbe6eb87ac838d6a526146f7dab14af671121eb379/invoke-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.0" + +[[packages.wheels]] +name = "jellyfish-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/aa/332fd282668a353570bdad56d65f526bc28ab73da1a3dd99e670af687186/jellyfish-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.0" + +[[packages.wheels]] +name = "jiter-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.11.3" + +[[packages.wheels]] +name = "keras-3.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/5b/4c778cc921ce4b864b238f63f8e3ff6e954ab19b80c9fa680593ad8093d4/keras-3.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.32" + +[[packages.wheels]] +name = "langsmith-0.4.32-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/80/ff33907e4d7b7dc56f8a592e404488baec9e79a1e5517dd19673a93597b7/langsmith-0.4.32-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.45.1" + +[[packages.wheels]] +name = "llvmlite-0.45.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/09/56/ed35668130e32dbfad2eb37356793b0a95f23494ab5be7d9bf5cb75850ee/llvmlite-0.45.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "3.12.0" + +[[packages.wheels]] +name = "logfire_api-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/c6/210bb1da7119af155276046c18ceff29867dfe9ea4bcb7d03397b28bd1cd/logfire_api-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.0" + +[[packages.wheels]] +name = "lxml-6.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f4/87/6456b9541d186ee7d4cb53bf1b9a0d7f3b1068532676940fdd594ac90865/lxml-6.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/1d/70c28528794f6410ee2856cd729fa1f1756498b8d3126443b0a94e1a8695/matplotlib-3.10.6-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "maturin" +version = "1.9.4" + +[[packages.wheels]] +name = "maturin-1.9.4-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/14/f86d0124bf1816b99005c058a1dbdca7cb5850d9cf4b09dcae07a1bc6201/maturin-1.9.4-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.11.0" + +[[packages.wheels]] +name = "mcp-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/9c/c9ca79f9c512e4113a5d07043013110bb3369fc7770040c61378c7fbcf70/mcp-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.1" + +[[packages.wheels]] +name = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/8a/a2b9375c94077e5a488a624a195621407846f504068ce22ccf805c674156/ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.10" + +[[packages.wheels]] +name = "mpld3-0.5.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/6a/e3691bcc47485f38b09853207c928130571821d187cf174eed5418d45e82/mpld3-0.5.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.6.4" + +[[packages.wheels]] +name = "multidict-6.6.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/34/746696dffff742e97cd6a23da953e55d0ea51fa601fa2ff387b3edcfaa2c/multidict-6.6.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf" + +[[packages]] +name = "mypy" +version = "1.17.1" + +[[packages.wheels]] +name = "mypy-1.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/53/f9/4a83e1c856a3d9c8f6edaa4749a4864ee98486e9b9dbfbc93842891029c2/mypy-1.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.8.0" + +[[packages.wheels]] +name = "narwhals-2.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/86/ac808ecb94322a3f1ea31627d13ab3e50dd4333564d711e0e481ad0f4586/narwhals-2.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6304856676ba4a79fd34148bda63aed8060dd6edb1227edf3659ce5e091de73c" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.2.21" + +[[packages.wheels]] +name = "nh3-0.2.21-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/fc/8ce756c032c70ae3dd1d48a3552577a325475af2a2f629604b44f571165c/nh3-0.2.21-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.4.5" + +[[packages.wheels]] +name = "notebook-7.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/c7/207fd1138bd82435d13b6d8640a240be4d855b8ddb41f6bf31aca5be64df/notebook-7.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.62.1" + +[[packages.wheels]] +name = "numba-0.62.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9c/ec/9d414e7a80d6d1dc4af0e07c6bfe293ce0b04ea4d0ed6c45dad9bd6e72eb/numba-0.62.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/b5/263ebbbbcede85028f30047eab3d58028d7ebe389d6493fc95ae66c636ab/numpy-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.22.1" + +[[packages.wheels]] +name = "onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4c/06/9c765e66ad32a7e709ce4cb6b95d7eaa9cb4d92a6e11ea97c20ffecaf765/onnxruntime-1.22.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982" + +[[packages]] +name = "openai" +version = "2.3.0" + +[[packages.wheels]] +name = "openai-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5b/4be258ff072ed8ee15f6bfd8d5a1a4618aa4704b127c0c5959212ad177d6/openai-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.14.1" + +[[packages.wheels]] +name = "optree-0.14.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/43/93aa65f56b857b8364e76d76eb188a4a6912ed305374b90f9ba30dcf0de9/optree-0.14.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.10.18" + +[[packages.wheels]] +name = "orjson-3.10.18-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "11.3.0" + +[[packages.wheels]] +name = "pillow-11.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51" + +[[packages]] +name = "pip" +version = "25.2" + +[[packages.wheels]] +name = "pip-25.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3f/945ef7ab14dc4f9d7f40288d2df998d1837ee0888ec3659c813487572faa/pip-25.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717" + +[[packages]] +name = "pipdeptree" +version = "2.29.0" + +[[packages.wheels]] +name = "pipdeptree-2.29.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/97/ad47810045455809314581cd7e0c879fed311e41a9d3e417558dd122ab7d/pipdeptree-2.29.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.3.0" + +[[packages.wheels]] +name = "plotly-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/a9/12e2dc726ba1ba775a2c6922d5d5b4488ad60bdab0888c337c194c8e6de8/plotly-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.34.0" + +[[packages.wheels]] +name = "polars-1.34.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/80/1791ac226bb989bef30fe8fde752b2021b6ec5dfd6e880262596aedf4c05/polars-1.34.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391" + +[[packages]] +name = "polars-runtime-32" +version = "1.34.0" + +[[packages.wheels]] +name = "polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/75/c30049d45ea1365151f86f650ed5354124ff3209f0abe588664c8eb13a31/polars_runtime_32-1.34.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.3.1" + +[[packages.wheels]] +name = "propcache-0.3.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/2c/a54614d61895ba6dd7ac8f107e2b2a0347259ab29cbf2ecc7b94fa38c4dc/propcache-0.3.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.14.0" + +[[packages.wheels]] +name = "psygnal-0.14.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/bf/e29ad79e905368a926e36f7fc5a88ba54d9129fadf66266029e8d3d02ee1/psygnal-0.14.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.11.9" + +[[packages.wheels]] +name = "pydantic-2.11.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/d3/108f2006987c58e76691d5ae5d200dd3e0f532cb4e5fa3560751c3a1feba/pydantic-2.11.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2" + +[[packages]] +name = "pydantic-ai-slim" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_ai_slim-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/23/b4d52d83c302859e1e251a8c8a360b993cf8b4818c8b633adaa98b043556/pydantic_ai_slim-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e" + +[[packages]] +name = "pydantic-core" +version = "2.33.2" + +[[packages.wheels]] +name = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9" + +[[packages]] +name = "pydantic-evals" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_evals-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/6e/8d88e00f624a8348b286b219a292fe3e077ee973660dcff6b4ddd5a04e85/pydantic_evals-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400" + +[[packages]] +name = "pydantic-graph" +version = "0.2.9" + +[[packages.wheels]] +name = "pydantic_graph-0.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/cc/e609261763a76f4d23a545afb462847592bc6b4d8eb412990b9b913c073e/pydantic_graph-0.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce" + +[[packages]] +name = "pydantic-settings" +version = "2.8.1" + +[[packages.wheels]] +name = "pydantic_settings-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/53/a64f03044927dc47aafe029c42a5b7aabc38dfb813475e0e1bf71c4a59d0/pydantic_settings-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.12.1" + +[[packages.wheels]] +name = "pymongo-4.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/b9/459da646d9750529f04e7e686f0cd8dd40174138826574885da334c01b16/pymongo-4.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.2.0" + +[[packages.wheels]] +name = "pyodbc-5.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/2a/3219c8b7fa3788fc9f27b5fc2244017223cf070e5ab370f71c519adf9120/pyodbc-5.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.2" + +[[packages.wheels]] +name = "pyomo-6.9.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/88/0a07233e39357d3d620186485b927074d6d0ae0f64ad72cc5222ae05844e/pyomo-6.9.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyproj" +version = "3.7.0" + +[[packages.wheels]] +name = "pyproj-3.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f8/33/3c8c6302717096b54aa14ccbb271045ba04629e21cbf348f2f2dc94f69b4/pyproj-3.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.0" + +[[packages.wheels]] +name = "PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/ed/ff94d6b2910e7627380cb1fc9a518ff966e6d78285c8e54c9422b68305db/PyQt5_sip-12.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca" + +[[packages]] +name = "pyqtgraph" +version = "0.13.7" + +[[packages.wheels]] +name = "pyqtgraph-0.13.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/34/5702b3b7cafe99be1d94b42f100e8cc5e6957b761fcb1cf5f72d492851da/pyqtgraph-0.13.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.15.1" + +[[packages.wheels]] +name = "python_barcode-0.15.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/27/9b5c5bb1938d4e6b12f4c95f40ea905c11df3cd58e128e9305397b9a2697/python_barcode-0.15.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.1.10" + +[[packages.wheels]] +name = "pytokens-0.1.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e5/63bed382f6a7a5ba70e7e132b8b7b8abbcf4888ffa6be4877698dcfbed7d/pytokens-0.1.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.8.0" + +[[packages.wheels]] +name = "pywavelets-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c9/4f/0a709a5732e6cf9297fc87bf545cb879997cde204115f8c0cbc296c5bdd3/pywavelets-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5" + +[[packages]] +name = "pywin32" +version = "310" + +[[packages.wheels]] +name = "pywin32-310-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.13.0" + +[[packages.wheels]] +name = "rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/96/e3/a98c25c4f74051df4dcf2f393176b8663bfd93c7afc6692c84e96de147a2/rapidfuzz-3.13.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.7.34" + +[[packages.wheels]] +name = "regex-2025.7.34-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/fa/917d64dd074682606a003cba33585c28138c77d848ef72fc77cbb1183849/regex-2025.7.34-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/57/0f38e396ad19e41b4c5db66130167eef8ee620a49bc7d0512e3bb67e0cab/scipy-1.16.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.8" + +[[packages.wheels]] +name = "scs-3.2.8-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/c6/dfbe4079bbac44b22daadbee01eae36fc21640e420381397279dcacf11d7/scs-3.2.8-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.1" + +[[packages.wheels]] +name = "shapely-2.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.1" + +[[packages.wheels]] +name = "simplejson-3.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/a9/25282fdd24493e1022f30b7f5cdf804255c007218b2bfaa655bd7ad34b2d/simplejson-3.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.1" + +[[packages.wheels]] +name = "sounddevice-0.5.1-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/9b/15217b04f3b36d30de55fef542389d722de63f1ad81f9c72d8afc98cb6ab/sounddevice-0.5.1-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlalchemy" +version = "2.0.41" + +[[packages.wheels]] +name = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e9/61/e8c1b9b6307c57157d328dd8b8348ddc4c47ffdf1279365a13b2b98b8049/sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.2.0" + +[[packages.wheels]] +name = "sspilib-0.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/ad/40f898075c913c75060c17c9cc6d6b86e8f83b6f5e1e017627b07ff53fcd/sspilib-0.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.49.1" + +[[packages.wheels]] +name = "streamlit-1.49.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/9e/146cdef515ad07e56c3aa942d087562498592d441aa3bae845ef0cd8fca3/streamlit-1.49.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.11.0" + +[[packages.wheels]] +name = "tiktoken-0.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/50/79/bcf350609f3a10f09fe4fc207f132085e497fdd3612f3925ab24d86a0ca0/tiktoken-0.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.21.4" + +[[packages.wheels]] +name = "tokenizers-0.21.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/f2/fd673d979185f5dcbac4be7d09461cbb99751554ffb6718d0013af8604cb/tokenizers-0.21.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli" +version = "2.2.1" + +[[packages.wheels]] +name = "tomli-2.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.0" + +[[packages.wheels]] +name = "typing_inspection-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.10.0" + +[[packages.wheels]] +name = "ujson-5.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d7/72/6cb6728e2738c05bbe9bd522d6fc79f86b9a28402f38663e85a28fddd4a0/ujson-5.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539" + +[[packages]] +name = "umap-learn" +version = "0.5.7" + +[[packages.wheels]] +name = "umap_learn-0.5.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/8f/671c0e1f2572ba625cbcc1faeba9435e00330c3d6962858711445cf1e817/umap_learn-0.5.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.35.0" + +[[packages.wheels]] +name = "uvicorn-0.35.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "1.17.2" + +[[packages.wheels]] +name = "wrapt-1.17.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.9.0" + +[[packages.wheels]] +name = "xarray-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/f0/73c24457c941b8b08f7d090853e40f4b2cdde88b5da721f3f28e98df77c9/xarray-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0" + +[[packages]] +name = "xlsxwriter" +version = "3.2.5" + +[[packages.wheels]] +name = "xlsxwriter-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.20.1" + +[[packages.wheels]] +name = "yarl-1.20.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" + +[[packages]] +name = "yt-dlp" +version = "2025.7.21" + +[[packages.wheels]] +name = "yt_dlp-2025.7.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e8/2f/abe59a3204c749fed494849ea29176bcefa186ec8898def9e43f649ddbcf/yt_dlp-2025.7.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3_wheels.toml new file mode 100644 index 00000000..6dc265d0 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_13_8_0whlb3_wheels.toml @@ -0,0 +1,5568 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.6.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/5f/a04791038cb659c8e1e7fb4a22d75a9fd3e3109a22822bd80beea0046dc4/adbc_driver_manager-1.6.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cc/00/f3a92c592a845ebb2f47d102a67f35f0925cb854c5e7386f1a3a1fdff2ab/aiohttp-3.13.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.72.0" + +[[packages.wheels]] +name = "anthropic-0.72.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/b7/160d4fb30080395b4143f1d1a4f6c646ba9105561108d2a434b606c03579/anthropic-0.72.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "appdirs" +version = "1.4.4" + +[[packages.wheels]] +name = "appdirs-1.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/45/58/ba5dad5c22a5338ae2954cc81e895add48f8c9b07961a5842cbc2e1f62f2/astropy-7.1.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/17/7e10ff1267bfa950cc16f0a411d457cdff79678fbb77a6c73b73a5317904/black-25.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/91/e739587be970a113b37b821eae8097aac5a48e5f0eca438c22e4c7dd8648/brotli-1.2.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cvxpy" +version = "1.7.1" + +[[packages.wheels]] +name = "cvxpy-1.7.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/06/50843aa5157a7d7db693f47b34ac3eadf47802300e893aa3446e06c358c3/cvxpy-1.7.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.1" + +[[packages.wheels]] +name = "cython-3.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e4/29/4408c3486ff380a2d6ae0d4b71da5195efcef3c4360017113ee7d1cb7335/cython-3.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/a4/fb7eb403c6a4c81e5a30363f34a71adcc8bf5292dc8ea32e2440aa5668f2/cytoolz-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "deap" +version = "1.4.2" + +[[packages.wheels]] +name = "deap-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/22/614264336b00b1a01447e31c941fd4576478b5d32184dbb552db27b1c2a1/deap-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.2" + +[[packages.wheels]] +name = "duckdb-1.4.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/58/b7/8d3a58b5ebfb9e79ed4030a0f2fbd7e404c52602e977b1e7ab51651816c7/duckdb-1.4.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f7c61617d2b1da3da5d7e215be616ad45aa3221c4b9e2c4d1c28ed09bc3c1c4" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.11.0" + +[[packages.wheels]] +name = "faker-37.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/46/8f4097b55e43af39e8e71e1f7aec59ff7398bca54d975c30889bc844719d/faker-37.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.121.3" + +[[packages.wheels]] +name = "fastapi-0.121.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/b6/4f620d7720fc0a754c8c1b7501d73777f6ba43b57c8ab99671f4d7441eb8/fastapi-0.121.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/1f/9589e35e9ea68035385db7bdbf500d36b8891db474063fb1ccc8215ee37c/fastavro-1.12.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/a9/be7219fc64a6026cc0aded17fa3720f9277001c185434230bd351bf678e6/fonttools-4.59.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a72155928d7053bbde499d32a9c77d3f0f3d29ae72b5a121752481bcbd71e50f" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.50.1" + +[[packages.wheels]] +name = "google_genai-1.50.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/6b/78a7588d9a4f6c8c8ed326a32385d0566a3262c91c3f7a005e4231207894/google_genai-1.50.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/55/2321e43595e6801e105fcfdee02b34c0f996eb71e6ddffca6b10b7e1d771/greenlet-3.2.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.34.1" + +[[packages.wheels]] +name = "groq-0.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/64/592078e354946265430f4fbd337271338245531e14504a6c3623dcae59ad/groq-0.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25" + +[[packages]] +name = "guidata" +version = "3.13.1" + +[[packages.wheels]] +name = "guidata-3.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/3f/c62f76f88ce523ebeb80a25dc46c82ef600882624fd07788019b6500748a/guidata-3.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.1.4" + +[[packages.wheels]] +name = "huggingface_hub-1.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/3f/969137c9d9428ed8bf171d27604243dd950a47cac82414826e2aebbc0a4c/huggingface_hub-1.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.7.0" + +[[packages.wheels]] +name = "ipython-9.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/aa/62893d6a591d337aa59dcc4c6f6c842f1fe20cd72c8c5c1f980255243252/ipython-9.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/9a/6102b23b03a6df779fee76c979c0eb819b300c83b468900df78bb574b944/jellyfish-1.2.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.44" + +[[packages.wheels]] +name = "langsmith-0.4.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/78/7d00da455307c78ebfa1fee733f82d9f27a511fcc9fd62bb3e6e67cf8dde/langsmith-0.4.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "llvmlite" +version = "0.46.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.46.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/ae/3a3e17d5ca1f67f060e8f54f7a8e4c3b60fe417abe5b91b2a2d4482de369/llvmlite-0.46.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d3782624374ec98d30d6e89c078c7571d3022d89cbb2703038b409604c7a8a8" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5" + +[[packages]] +name = "matplotlib" +version = "3.10.7" + +[[packages.wheels]] +name = "matplotlib-3.10.7-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e1/b6/23064a96308b9aeceeffa65e96bcde459a2ea4934d311dee20afde7407a0/matplotlib-3.10.7-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "744991e0cc863dd669c8dc9136ca4e6e0082be2070b9d793cbd64bec872a6815" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4" + +[[packages]] +name = "mlxtend" +version = "0.23.3" + +[[packages.wheels]] +name = "mlxtend-0.23.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/92/5c322336a0991949a1e91f6acd7e04f7e05b0fb6252a3f00fcdc0cb5e97d/mlxtend-0.23.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.0" + +[[packages.wheels]] +name = "msgpack-1.1.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/bc/8bd826dd03e022153bfa1766dcdec4976d6c818865ed54223d71f07862b3/msgpack-1.1.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390" + +[[packages]] +name = "mypy" +version = "1.18.2" + +[[packages.wheels]] +name = "mypy-1.18.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/cf/ac0f2c7e9d0ea3c75cd99dff7aec1c9df4a1376537cb90e4c882267ee7e9/mypy-1.18.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0e2785a84b34a72ba55fb5daf079a1003a34c05b22238da94fcae2bbe46f3544" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0rc1" + +[[packages.wheels]] +name = "numba-0.63.0rc1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/c0/12525f1b1f95001fa4986cdc9f6ee70da5c43e7bbc37e295937eb871fc29/numba-0.63.0rc1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "59182b5a8c5a6feadbfc24626a78aaa09c1ec8a2a63561ea3fdc683eaa25dee1" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "onnxruntime" +version = "1.23.2" + +[[packages.wheels]] +name = "onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088" + +[[packages]] +name = "openai" +version = "2.8.1" + +[[packages.wheels]] +name = "openai-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/4f/dbc0c124c40cb390508a82770fb9f6e3ed162560181a85089191a851c59a/openai-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/ab/5b2c75c262c106747b5fbf1603a94ca8047896e719c3219ca85cb2d9c300/optree-0.17.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c0/a9/967be009ddf0a1fffd7a67de9c36656b28c763659ef91352acc02cbe364c/orjson-3.11.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a" + +[[packages]] +name = "osqp" +version = "0.6.7.post3" + +[[packages.wheels]] +name = "osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4b/0a/acd48ad432ccf2538972805095108801a3b29a2433b48bd3a34e640df1e4/osqp-0.6.7.post3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/2a/dd43dcfd6dae9b6a49ee28a8eedb98c7d5ff2de94a5d834565164667b97b/pillow-12.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "plotpy" +version = "2.7.5" + +[[packages.wheels]] +name = "plotpy-2.7.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/10/c3ec24b35dd9cdfc5447024eab3a7a0dcfde7ceeb6e0d8a69668715ce09e/plotpy-2.7.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.35.2" + +[[packages.wheels]] +name = "polars-1.35.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/9a/24e4b890c7ee4358964aa92c4d1865df0e8831f7df6abaa3a39914521724/polars-1.35.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e" + +[[packages]] +name = "polars-runtime-32" +version = "1.35.2" + +[[packages.wheels]] +name = "polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/dc/40/96a808ca5cc8707894e196315227f04a0c82136b7fb25570bc51ea33b88d/polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.0" + +[[packages.wheels]] +name = "prince-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/d5/b4480a0f381cbbcfad31f4d118732ab717216857508a730938ee615669a1/prince-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/5a/18c8cb13fc6908dc41a483d2c14d927a7a3f29883748747e8cb625da6587/psycopg2-2.9.11-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/71/d143b294259a9067cde1a1a5c4025e0a98dff876576a84495e50da7e1316/psygnal-0.15.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07" + +[[packages]] +name = "ptpython" +version = "3.0.31" + +[[packages.wheels]] +name = "ptpython-3.0.31-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/18/3d9874ef021a9df79e1f0fc971f4e990cee55750c8bc9fe547a24c130009/ptpython-3.0.31-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "21.0.0" + +[[packages.wheels]] +name = "pyarrow-21.0.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/63/581f2076465e67b23bc5a37d4a2abff8362d389d29d8105832e82c9c811c/pyarrow-21.0.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.4" + +[[packages.wheels]] +name = "pydantic-2.12.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/f3/5ca27e1765fa698c677771a1c0e042ef193e207c15f5d32a21fa5b13d8c3/pymongo-4.15.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/03/15dcefe549d3888b649652af7cca36eda97c12b6196d92937ca6d11306e9/pyodbc-5.3.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e" + +[[packages]] +name = "pyogrio" +version = "0.10.0" + +[[packages.wheels]] +name = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/5d/0deb16d228362a097ee3258d0a887c9c0add4b9678bb4847b08a241e124d/pyogrio-0.10.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/61/e28681dd5200094f7b2e6671e85c02a4d6693da36d23ad7d39ffbc70b15c/pyqt5_sip-12.17.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0a/87/78ef3f9fb36cdb16ee82371d22c3a7c89eeb79ec8c9daef6222060da6c79/pywavelets-1.9.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qdldl" +version = "0.1.7.post5" + +[[packages.wheels]] +name = "qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/08/f7/abac03a09f6848cee6d5dd7a7a8bd1dfed68766ee77f9cbf3e9de596ad68/qdldl-0.1.7.post5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/07/75/fde1f334b0cec15b5946d9f84d73250fbfcc73c236b4bc1b25129d90876b/rapidfuzz-3.14.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/71/2d/55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570/regex-2025.10.23-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.6" + +[[packages.wheels]] +name = "ruff-0.14.6-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/02/82240553b77fd1341f80ebb3eaae43ba011c7a91b4224a9f317d8e6591af/ruff-0.14.6-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.25.2" + +[[packages.wheels]] +name = "scikit_image-0.25.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a7/c7/03000262759d7b6f38c836ff9d512f438a70d8a8ddae68ee80de72dcfb63/scikit_learn-1.7.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/01/1204382461fcbfeb05b6161b594f4007e78b6eba9b375382f79153172b4d/scipy-1.16.3-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/02/97813588bd4cb26f45c293899dd2834e25b019724a390e1a224c4f128396/scs-3.2.9-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/87/10/d42ad61230436735c68af1120622b28a782877146a83d714da7b6a2a1c4e/simplejson-3.20.2-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1rc1" + +[[packages.wheels]] +name = "spyder-6.1.1rc1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/3d/184dc52d19612451f8f179aa18079342a4910c205ceb16c12187a20dcc18/spyder-6.1.1rc1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/a8/bbd5dfbeca085dce4430a2b419f63ef54f7f3814541b0dc79671a9d19c47/sspilib-0.4.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939" + +[[packages]] +name = "streamlit" +version = "1.51.0" + +[[packages.wheels]] +name = "streamlit-1.51.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/60/868371b6482ccd9ef423c6f62650066cf8271fdb2ee84f192695ad6b7a96/streamlit-1.51.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4008b029f71401ce54946bb09a6a3e36f4f7652cbb48db701224557738cfda38" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5b/d8/1baee0f4179a4d0f5ce086832147b6cc9b7731c24ca08e14a3fdb8d39c32/ujson-5.11.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wordcloud" +version = "1.9.4" + +[[packages.wheels]] +name = "wordcloud-1.9.4-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/47/d482f7d2decc6e59e69e105b12c53d6d2967f0d703e664484c5f2f87fca8/wordcloud-1.9.4-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/85/64/d3954e836ea67c4d3ad5285e5c8fd9d362fd0a189a2db622df457b0f4f6a/wrapt-2.0.1-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp313-cp313-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d9/82/b9c06c870f3bd8767c201f1edbdf9e8dc34be5b0fbc5682c4f80fe948475/zstandard-0.25.0-cp313-cp313-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb1.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb1.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb2.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb2.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb3.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2dotb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb1.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb1.toml new file mode 100644 index 00000000..e0aac7a6 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb1.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.2.2.post1" + +[[packages.wheels]] +name = "build-1.2.2.post1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/c2/80633736cd183ee4a62107413def345f7e6e3c01563dbca1417363cf957e/build-1.2.2.post1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb2.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb2.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb3.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2freeb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb2.toml new file mode 100644 index 00000000..059129f8 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb2.toml @@ -0,0 +1,2411 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "24.10.0" + +[[packages.wheels]] +name = "black-24.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/a7/4b27c50537ebca8bec139b872861f9d2bf501c5ec51fcf897cb924d9e264/black-24.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.8.3" + +[[packages.wheels]] +name = "certifi-2025.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/57/7af75a803d55610d570d7b7a0fdc2bfd82fae030c728089cc628562d67f9/cython-3.1.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "acb99ddec62ba1ea5de0e0087760fa834ec42c94f0488065a4f1995584e8e94e" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/26/394276b71c7538445f29e792f589ab7379ae70fd26ff5577dfde71158e96/debugpy-1.8.17-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/74/55e5c57c414fa3965fee5fc036ed23f26a5c4e9e10f7f078a54ff9c7dfb7/fonttools-4.59.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "llvmlite" +version = "0.46.0b1" + +[[packages.wheels]] +name = "llvmlite-0.46.0b1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2c/00/b709b8ce575f8d8c2b14dc2bad9d9650f7ec48f5732fcab196ba39b97904/llvmlite-0.46.0b1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "44dbad743b6e41e413085e7b56b82272f51d4994ba36c3633c8b8eb632db6990" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/fb/af09c463ced80b801629fd73b96f726c9f6124c3603aa2e480a061d6705b/matplotlib-3.10.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "05be9bdaa8b242bc6ff96330d18c52f1fc59c6fb3a4dd411d953d67e7e1baf98" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0b1" + +[[packages.wheels]] +name = "numba-0.63.0b1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/d1/0b0321717d71d24f326224128639c115bb7cdf8a1bb957472419dd2e42e4/numba-0.63.0b1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a54b9c32a4d4b652df57d539ecf1cd8e5f860b40655fd36b6f8d391e95a7ae41" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/5f/1816f4d08f3b8f66576d8433a66f8fa35a5acfb3bbd0bf6c31183b003f3d/numpy-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "691808c2b26b0f002a032c73255d0bd89751425f379f7bcd22d140db593a96e8" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/87/24f541b6d62b1794939ae6422f8023703bbf6900378b2b34e0b4384dfefd/scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e4/9f/b62587029980378304ba5a8563d376c96f40b1e133daacee76efdcae32de/scipy-1.16.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f5a85d7b2b708025af08f060a496dd261055b617d776fc05a1a1cc69e09fe9ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/21/abdedb4cdf6ff41ebf01a74087740a709e2edb146490e4d9beea054b0b7a/wrapt-1.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb3.toml new file mode 100644 index 00000000..980bcba1 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimb3.toml @@ -0,0 +1,5524 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.72.0" + +[[packages.wheels]] +name = "anthropic-0.72.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/b7/160d4fb30080395b4143f1d1a4f6c646ba9105561108d2a434b606c03579/anthropic-0.72.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.1" + +[[packages.wheels]] +name = "cython-3.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/dc/d72dbb2f8e7ca95d2d18fd86f32b2e385996576230e7ecddd7d250786825/cython-3.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/26/394276b71c7538445f29e792f589ab7379ae70fd26ff5577dfde71158e96/debugpy-1.8.17-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.2" + +[[packages.wheels]] +name = "duckdb-1.4.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/25/5e/6f5ebaabc12c6db62f471f86b5c9c8debd57f11aa1b2acbbcc4c68683238/duckdb-1.4.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dfcc56a83420c0dec0b83e97a6b33addac1b7554b8828894f9d203955591218c" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.11.0" + +[[packages.wheels]] +name = "faker-37.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/46/8f4097b55e43af39e8e71e1f7aec59ff7398bca54d975c30889bc844719d/faker-37.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.121.3" + +[[packages.wheels]] +name = "fastapi-0.121.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/b6/4f620d7720fc0a754c8c1b7501d73777f6ba43b57c8ab99671f4d7441eb8/fastapi-0.121.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/74/55e5c57c414fa3965fee5fc036ed23f26a5c4e9e10f7f078a54ff9c7dfb7/fonttools-4.59.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.50.1" + +[[packages.wheels]] +name = "google_genai-1.50.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/6b/78a7588d9a4f6c8c8ed326a32385d0566a3262c91c3f7a005e4231207894/google_genai-1.50.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.34.1" + +[[packages.wheels]] +name = "groq-0.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/64/592078e354946265430f4fbd337271338245531e14504a6c3623dcae59ad/groq-0.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25" + +[[packages]] +name = "guidata" +version = "3.13.1" + +[[packages.wheels]] +name = "guidata-3.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/3f/c62f76f88ce523ebeb80a25dc46c82ef600882624fd07788019b6500748a/guidata-3.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.0" + +[[packages.wheels]] +name = "holoviews-1.22.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/3d/e60b64b6d8af103739914e1d3e1e4bb3b464a4ec6435aa146ff63a24dc3c/holoviews-1.22.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.1.4" + +[[packages.wheels]] +name = "huggingface_hub-1.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/3f/969137c9d9428ed8bf171d27604243dd950a47cac82414826e2aebbc0a4c/huggingface_hub-1.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.7.0" + +[[packages.wheels]] +name = "ipython-9.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/aa/62893d6a591d337aa59dcc4c6f6c842f1fe20cd72c8c5c1f980255243252/ipython-9.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.44" + +[[packages.wheels]] +name = "langsmith-0.4.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/78/7d00da455307c78ebfa1fee733f82d9f27a511fcc9fd62bb3e6e67cf8dde/langsmith-0.4.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.46.0rc1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/0e/5bbe599e64cfacbfbad20a45c37735c1b26f7f0fbcecb9dcc5f0a9165ee7/llvmlite-0.46.0rc1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28a7586f1757ba38f1be9c87f0b11c31828dc8b08c72534ca8a9d190c1717a75" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.7" + +[[packages.wheels]] +name = "matplotlib-3.10.7-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/77c95aaa9bb32c345cbb49626ad8eb15550cba2e6d4c88081a6c2ac7b08d/matplotlib-3.10.7-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4645fc5d9d20ffa3a39361fcdbcec731382763b623b72627806bf251b6388866" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.18.2" + +[[packages.wheels]] +name = "mypy-1.18.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/25/bc/cc98767cffd6b2928ba680f3e5bc969c4152bf7c2d83f92f5a504b92b0eb/mypy-1.18.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "749b5f83198f1ca64345603118a6f01a4e99ad4bf9d103ddc5a3200cc4614adf" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/3a/be129764fe5f5cd89a5aa3f58e7a7471284715f4af71097a980d24ebec0a/mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0rc1" + +[[packages.wheels]] +name = "numba-0.63.0rc1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/c4/b21438b31cec47e640c06dab6c13c903896e81eaf85219538d123fc96e7f/numba-0.63.0rc1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cd09955580ca85443da7ba2791d2f0f1c5f191c52c3046fef6a60155e14c1b3" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.8.1" + +[[packages.wheels]] +name = "openai-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/4f/dbc0c124c40cb390508a82770fb9f6e3ed162560181a85089191a851c59a/openai-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.3" + +[[packages.wheels]] +name = "panel-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/f6/6dd8932f59f0e1e2649a2b2ae4a9e849218aa3d6ae8fdbbd01f5457b3b9b/panel-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.35.2" + +[[packages.wheels]] +name = "polars-1.35.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/9a/24e4b890c7ee4358964aa92c4d1865df0e8831f7df6abaa3a39914521724/polars-1.35.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e" + +[[packages]] +name = "polars-runtime-32" +version = "1.35.2" + +[[packages.wheels]] +name = "polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/dc/40/96a808ca5cc8707894e196315227f04a0c82136b7fb25570bc51ea33b88d/polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3c/79/755ff2d145aafec8d347bf18f95e4e81c00127f06d080135dfc86aea417c/pyarrow-22.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.4" + +[[packages.wheels]] +name = "pydantic-2.12.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.6" + +[[packages.wheels]] +name = "ruff-0.14.6-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/02/82240553b77fd1341f80ebb3eaae43ba011c7a91b4224a9f317d8e6591af/ruff-0.14.6-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/87/24f541b6d62b1794939ae6422f8023703bbf6900378b2b34e0b4384dfefd/scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1rc1" + +[[packages.wheels]] +name = "spyder-6.1.1rc1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/3d/184dc52d19612451f8f179aa18079342a4910c205ceb16c12187a20dcc18/spyder-6.1.1rc1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/df/b1/61da91f341871af14ea0a26bcffe6b2b8dbb8eed3cda3f804b4dcee54ce8/sspilib-0.4.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8b/c0/b28d0fd0347ea38d3610052f479e4b922eb33bb8790817f93cd89e6e08ba/statsmodels-0.14.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "95af7a9c4689d514f4341478b891f867766f3da297f514b8c4adf08f4fa61d03" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb2.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb2.toml new file mode 100644 index 00000000..8ee091d0 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb2.toml @@ -0,0 +1,1168 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "certifi" +version = "2025.8.3" + +[[packages.wheels]] +name = "certifi-2025.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/24/f7351052cf9db771fe4f32fca47fd66e6d9b53d8613b17faf7d130a9d553/cython-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d194d95e4fa029a3f6c7d46bdd16d973808c7ea4797586911fdb67cb98b1a2c6" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/a0/d4c4bc5b50275449a9a908283b567caa032a94505fe1976e17f994faa6be/fonttools-4.59.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7ad5d8d8cc9e43cb438b3eb4a0094dd6d4088daa767b0a24d52529361fd4c199" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "ipykernel" +version = "7.0.1" + +[[packages.wheels]] +name = "ipykernel-7.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/f7/761037905ffdec673533bfa43af8d4c31c859c778dfc3bbb71899875ec18/ipykernel-7.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87182a8305e28954b6721087dec45b171712610111d494c17bb607befa1c4000" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/34/c4b71b69edf5b06e635eee1ed10bfc73cf8df058b66e63e30e6a55e231d5/matplotlib-3.10.6-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c7e0518e0d223683532a07f4b512e2e0729b62674f1b3a1a69869f98e6b1c7e3" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/c7/b0f6b5b67f6788a0725f744496badbb604d226bf233ba716683ebb47b570/numpy-2.3.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b37a0b2e5935409daebe82c1e42274d30d9dd355852529eab91dab8dcca7419f" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/73/e29aa0c9c666cf787628d3f0dcf379f4791fba79f4936d02f8b37165bdf8/pillow-12.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[packages.sdist] +name = "psutil-7.1.1.tar.gz" +url = "https://files.pythonhosted.org/packages/89/fc/889242351a932d6183eec5df1fc6539b6f36b6a88444f1e63f18668253aa/psutil-7.1.1.tar.gz" + +[packages.sdist.hashes] +sha256 = "092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/24/c6907c5bb06043df98ad6a0a0ff5db2e0affcecbc3b15c42404393a3f72a/pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/7d/97119da51cb1dd3f2f3c0805f155a3aa4a95fa44fe7d78ae15e69edf4f34/rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c6/b4/5c18a766e8353015439f3780f5fc473f36f9762edc1a2e45da3ff5a31b21/scipy-1.16.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "26284797e38b8a75e14ea6631d29bda11e76ceaa6ddb6fdebbfe4c4d90faf2f9" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[packages.sdist] +name = "tornado-6.5.2.tar.gz" +url = "https://files.pythonhosted.org/packages/09/ce/1eb500eae19f4648281bb2186927bb062d2438c2e5093d1360391afd2f90/tornado-6.5.2.tar.gz" + +[packages.sdist.hashes] +sha256 = "ab53c8f9a0fa351e2c0741284e06c7a45da86afb544133201c5cc8578eb076a0" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb3.toml new file mode 100644 index 00000000..b8be3e39 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2slimfb3.toml @@ -0,0 +1,4160 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/0f/27e4fdde899e1e90e35eeff56b54ed63826435ad6cdb06b09ed312d1b3fa/aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.72.0" + +[[packages.wheels]] +name = "anthropic-0.72.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/b7/160d4fb30080395b4143f1d1a4f6c646ba9105561108d2a434b606c03579/anthropic-0.72.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.3.2" + +[[packages.wheels]] +name = "autopep8-2.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/43/53afb8ba17218f19b77c7834128566c5bbb100a0ad9ba2e8e89d089d7079/autopep8-2.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ce8ad498672c845a0c3de2629c15b635ec2b05ef8177a6e7c91c74f3e9b51128" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3f/61/3291c2243ae0229e5bca5d19f4032cecad5dfb05a2557169d3a69dc0ba91/bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/5d/aed32636ed30a6e7f9efd6ad14e2a0b0d687ae7c8c7ec4e4a557174b895c/black-25.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f6/30/640f34ccd4d2a1bc88367b54b926b781b5a018d65f404d409aba76a84b1c/cryptography-46.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.1" + +[[packages.wheels]] +name = "cython-3.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/30/373775b8d933d781d055c1dd0f110f275a101f320dab724c8c63a7c1b945/cython-3.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd72c46e7bffe8250c52d400e72c8d5d3086437b6aeec5b0eca99ccd337f5834" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/b4/b7ce3d3cd20337becfec978ecfa6d0ef64884d0cf32d44edfed8700914b9/cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.11.0" + +[[packages.wheels]] +name = "faker-37.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/46/8f4097b55e43af39e8e71e1f7aec59ff7398bca54d975c30889bc844719d/faker-37.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.121.3" + +[[packages.wheels]] +name = "fastapi-0.121.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/b6/4f620d7720fc0a754c8c1b7501d73777f6ba43b57c8ab99671f4d7441eb8/fastapi-0.121.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.2.0" + +[[packages.wheels]] +name = "flake8-7.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/5c/0627be4c9976d56b1217cb5187b7504e7fd7d3503f8bfd312a04077bd4f7/flake8-7.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93b92ba5bdb60754a6da14fa3b93a9361fd00a59632ada61fd7b130436c40343" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2d/a0/d4c4bc5b50275449a9a908283b567caa032a94505fe1976e17f994faa6be/fonttools-4.59.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7ad5d8d8cc9e43cb438b3eb4a0094dd6d4088daa767b0a24d52529361fd4c199" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.50.1" + +[[packages.wheels]] +name = "google_genai-1.50.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/6b/78a7588d9a4f6c8c8ed326a32385d0566a3262c91c3f7a005e4231207894/google_genai-1.50.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.34.1" + +[[packages.wheels]] +name = "groq-0.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/64/592078e354946265430f4fbd337271338245531e14504a6c3623dcae59ad/groq-0.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/b5/33764714923fa1ff922770f7ed18c2daae034d21ae6e10dbf4347c854154/hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "huggingface-hub" +version = "1.1.4" + +[[packages.wheels]] +name = "huggingface_hub-1.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/3f/969137c9d9428ed8bf171d27604243dd950a47cac82414826e2aebbc0a4c/huggingface_hub-1.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.7.0" + +[[packages.wheels]] +name = "ipython-9.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/aa/62893d6a591d337aa59dcc4c6f6c842f1fe20cd72c8c5c1f980255243252/ipython-9.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/59/81badb169212f30f47f817dfaabf965bc9b8204fed906fab58104ee541f9/jiter-0.11.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/1a/b248b355834c8e32614650b8008c69ffeb0ceb149c793961dd8c0b991bb3/lxml-6.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9" + +[[packages]] +name = "matplotlib" +version = "3.10.7" + +[[packages.wheels]] +name = "matplotlib-3.10.7-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/69/9684368a314f6d83fe5c5ad2a4121a3a8e03723d2e5c8ea17b66c1bad0e7/matplotlib-3.10.7-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f79d5de970fc90cd5591f60053aecfce1fcd736e0303d9f0bf86be649fa68fb8" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/8f/0a60e501584145588be1af5cc829265701ba3c35a64aec8e07cbb71d39bb/multidict-6.7.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd" + +[[packages]] +name = "mypy" +version = "1.18.2" + +[[packages.wheels]] +name = "mypy-1.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/e3/be76d87158ebafa0309946c4a73831974d4d6ab4f4ef40c3b53a385a66fd/mypy-1.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22a1748707dd62b58d2ae53562ffc4d7f8bcc727e8ac7cbc69c053ddc874d47e" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/e1/45373c06781340c7b74fe9b88b85278ac05321889a307eaa5be079a997d4/mysql_connector_python-9.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/ae/95c52b5a75da429f11ca8902c2128f64daafdc77758d370e4cc310ecda55/nh3-0.3.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/30/d48bde1dfd93332fa557cff1972fbc039e055a52021fbef4c2c4b1eefd17/numpy-2.3.5-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c8a9958e88b65c3b27e22ca2a076311636850b612d6bbfb76e8d156aacde2aaf" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.8.1" + +[[packages.wheels]] +name = "openai-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/4f/dbc0c124c40cb390508a82770fb9f6e3ed162560181a85089191a851c59a/openai-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/73/e29aa0c9c666cf787628d3f0dcf379f4791fba79f4936d02f8b37165bdf8/pillow-12.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[packages.sdist] +name = "psutil-7.1.1.tar.gz" +url = "https://files.pythonhosted.org/packages/89/fc/889242351a932d6183eec5df1fc6539b6f36b6a88444f1e63f18668253aa/psutil-7.1.1.tar.gz" + +[packages.sdist.hashes] +sha256 = "092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/68/ad28d0c0a089bcd813fc6355a448acf18c897b4ea02d33276b5f740c2a07/psygnal-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pycodestyle" +version = "2.13.0" + +[[packages.wheels]] +name = "pycodestyle-2.13.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/be/b00116df1bfb3e0bb5b45e29d604799f7b91dd861637e4d448b4e09e6a3e/pycodestyle-2.13.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35863c5974a271c7a726ed228a14a4f6daf49df369d8c50cd9a6f58a5e143ba9" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.4" + +[[packages.wheels]] +name = "pydantic-2.12.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pyflakes" +version = "3.3.2" + +[[packages.wheels]] +name = "pyflakes-3.3.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/40/b293a4fa769f3b02ab9e387c707c4cbdc34f073f945de0386107d4e669e6/pyflakes-3.3.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5039c8339cbb1944045f4ee5466908906180f13cc99cc9949348d10f82a5c32a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/c8/bc64321711e19bd48ea3371f0082f10295c433833245d73e7606d3b9afbe/pymongo-4.15.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c4/2c/942477957fba22da7bf99131850e5ebdff66623418ab48964e78a7a8293e/pynacl-1.6.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/c7/ee98c62050de4aa8bafb6eb1e11b95e0b0c898bd5930137c6dc776e06a9b/pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/d2/a8065103f5e2e613b916489e6c85af6402a1ec64f346d1429e2d32cb8d03/pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/24/c6907c5bb06043df98ad6a0a0ff5db2e0affcecbc3b15c42404393a3f72a/pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/97/433b2d98e97abd9fff1c470a109b311669f44cdec8d0d5aa250aceaed1fb/rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ef/a0/c84475e14a2829e9b0864ebf77c3f7da909df9d8acfe2bb540ff0072047c/regex-2025.10.23-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/7d/97119da51cb1dd3f2f3c0805f155a3aa4a95fa44fe7d78ae15e69edf4f34/rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.6" + +[[packages.wheels]] +name = "ruff-0.14.6-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/02/82240553b77fd1341f80ebb3eaae43ba011c7a91b4224a9f317d8e6591af/ruff-0.14.6-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/82/8d0e39f62764cce5ffd5284131e109f07cf8955aef9ab8ed4e3aa5e30539/scipy-1.16.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/df/c7891ef9d2712ad774777271d39fdef63941ffba0a9d59b7ad1fd2765e57/tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[packages.sdist] +name = "tornado-6.5.2.tar.gz" +url = "https://files.pythonhosted.org/packages/09/ce/1eb500eae19f4648281bb2186927bb062d2438c2e5093d1360391afd2f90/tornado-6.5.2.tar.gz" + +[packages.sdist.hashes] +sha256 = "ab53c8f9a0fa351e2c0741284e06c7a45da86afb544133201c5cc8578eb076a0" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/aa/03/b19c6176bdf1dc13ed84b886e99677a52764861b6cc023d5e7b6ebda249d/ujson-5.11.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/3a/07cd60a9d26fe73efead61c7830af975dfdba8537632d410462672e4432b/wrapt-2.0.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb2_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb2_wheels.toml new file mode 100644 index 00000000..aced007c --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb2_wheels.toml @@ -0,0 +1,2400 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "bcrypt" +version = "4.3.0" + +[[packages.wheels]] +name = "bcrypt-4.3.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a9/cf/45fb5261ece3e6b9817d3d82b2f343a505fd58674a92577923bc500bd1aa/bcrypt-4.3.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "24.10.0" + +[[packages.wheels]] +name = "black-24.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/a7/4b27c50537ebca8bec139b872861f9d2bf501c5ec51fcf897cb924d9e264/black-24.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.8.3" + +[[packages.wheels]] +name = "certifi-2025.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "cloudpickle" +version = "3.1.1" + +[[packages.wheels]] +name = "cloudpickle-3.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e8/64c37fadfc2816a7701fa8a6ed8d87327c7d54eacfbfb6edab14a2f2be75/cloudpickle-3.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "45.0.5" + +[[packages.wheels]] +name = "cryptography-45.0.5-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/10/197da38a5911a48dd5389c043de4aec4b3c94cb836299b01253940788d78/cryptography-45.0.5-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.1.4" + +[[packages.wheels]] +name = "cython-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/24/f7351052cf9db771fe4f32fca47fd66e6d9b53d8613b17faf7d130a9d553/cython-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d194d95e4fa029a3f6c7d46bdd16d973808c7ea4797586911fdb67cb98b1a2c6" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.2.18" + +[[packages.wheels]] +name = "Deprecated-1.2.18-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/74/55e5c57c414fa3965fee5fc036ed23f26a5c4e9e10f7f078a54ff9c7dfb7/fonttools-4.59.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "ipykernel" +version = "6.30.1" + +[[packages.wheels]] +name = "ipykernel-6.30.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4" + +[[packages]] +name = "ipython" +version = "9.6.0" + +[[packages.wheels]] +name = "ipython-9.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/c5/d5e07995077e48220269c28a221e168c91123ad5ceee44d548f54a057fc0/ipython-9.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.4.9" + +[[packages.wheels]] +name = "jupyterlab-4.4.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1f/fd/ac0979ebd1b1975c266c99b96930b0a66609c3f6e5d76979ca6eb3073896/jupyterlab-4.4.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.27.3" + +[[packages.wheels]] +name = "jupyterlab_server-2.27.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "llvmlite" +version = "0.46.0b1" + +[[packages.wheels]] +name = "llvmlite-0.46.0b1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2c/00/b709b8ce575f8d8c2b14dc2bad9d9650f7ec48f5732fcab196ba39b97904/llvmlite-0.46.0b1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "44dbad743b6e41e413085e7b56b82272f51d4994ba36c3633c8b8eb632db6990" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.6" + +[[packages.wheels]] +name = "matplotlib-3.10.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/fb/af09c463ced80b801629fd73b96f726c9f6124c3603aa2e480a061d6705b/matplotlib-3.10.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "05be9bdaa8b242bc6ff96330d18c52f1fc59c6fb3a4dd411d953d67e7e1baf98" + +[[packages]] +name = "matplotlib-inline" +version = "0.1.7" + +[[packages.wheels]] +name = "matplotlib_inline-0.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0b1" + +[[packages.wheels]] +name = "numba-0.63.0b1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7a/d1/0b0321717d71d24f326224128639c115bb7cdf8a1bb957472419dd2e42e4/numba-0.63.0b1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a54b9c32a4d4b652df57d539ecf1cd8e5f860b40655fd36b6f8d391e95a7ae41" + +[[packages]] +name = "numpy" +version = "2.3.3" + +[[packages.wheels]] +name = "numpy-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/5f/1816f4d08f3b8f66576d8433a66f8fa35a5acfb3bbd0bf6c31183b003f3d/numpy-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "691808c2b26b0f002a032c73255d0bd89751425f379f7bcd22d140db593a96e8" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "platformdirs" +version = "4.3.7" + +[[packages.wheels]] +name = "platformdirs-4.3.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6d/45/59578566b3275b8fd9157885918fcd0c4d74162928a5310926887b856a51/platformdirs-4.3.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "psutil" +version = "7.1.0" + +[[packages.wheels]] +name = "psutil-7.1.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/e9/b44c4f697276a7a95b8e94d0e320a7bf7f3318521b23de69035540b39838/psutil-7.1.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.22" + +[[packages.wheels]] +name = "pycparser-2.22-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.6" + +[[packages.wheels]] +name = "pylint-3.3.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/21/9537fc94aee9ec7316a230a49895266cf02d78aa29b0a2efbc39566e0935/pylint-3.3.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pynacl" +version = "1.5.0" + +[[packages.wheels]] +name = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.1" + +[[packages.wheels]] +name = "python_lsp_server-1.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/03/2884cf7bd092d8a5a71a406971fd2edf5c6171147ca2d4afb3f2a7f8c0f1/python_lsp_server-1.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.13.2" + +[[packages.wheels]] +name = "ruff-0.13.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/bd/d9f33a73de84fafd0146c6fba4f497c4565fe8fa8b46874b8e438869abc2/ruff-0.13.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/87/24f541b6d62b1794939ae6422f8023703bbf6900378b2b34e0b4384dfefd/scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8" + +[[packages]] +name = "scipy" +version = "1.16.2" + +[[packages.wheels]] +name = "scipy-1.16.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e4/9f/b62587029980378304ba5a8563d376c96f40b1e133daacee76efdcae32de/scipy-1.16.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f5a85d7b2b708025af08f060a496dd261055b617d776fc05a1a1cc69e09fe9ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.0" + +[[packages.wheels]] +name = "spyder-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/1b/7423a82c12ee1a3666f3adadcbd49269421511cf8f57829d260c864fa4aa/spyder-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e" + +[[packages]] +name = "spyder-kernels" +version = "3.1.0" + +[[packages.wheels]] +name = "spyder_kernels-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/dd/174f7d913ca87d60a55bfb9ffb72211be54c3f791e9db4ebe05e2c6b7eba/spyder_kernels-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wrapt" +version = "1.16.0" + +[[packages.wheels]] +name = "wrapt-1.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/21/abdedb4cdf6ff41ebf01a74087740a709e2edb146490e4d9beea054b0b7a/wrapt-1.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3_wheels.toml new file mode 100644 index 00000000..100cee1b --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_0_2whlb3_wheels.toml @@ -0,0 +1,5524 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.16.1" + +[[packages.wheels]] +name = "alembic-1.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/59/565286efff3692c5716c212202af61466480f6357c4ae3089d4453bff1f3/alembic-1.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.72.0" + +[[packages.wheels]] +name = "anthropic-0.72.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/b7/160d4fb30080395b4143f1d1a4f6c646ba9105561108d2a434b606c03579/anthropic-0.72.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d" + +[[packages]] +name = "anyio" +version = "4.11.0" + +[[packages.wheels]] +name = "anyio-4.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/b3/9b1a8074496371342ec1e796a96f99c82c945a339cd81a8e73de28b4cf9e/anyio-4.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.1" + +[[packages.wheels]] +name = "cython-3.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/86/dc/d72dbb2f8e7ca95d2d18fd86f32b2e385996576230e7ecddd7d250786825/cython-3.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.4" + +[[packages.wheels]] +name = "django-5.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/ae/706965237a672434c8b520e89a818e8b047af94e9beb342d0bee405c26c7/django-5.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.2" + +[[packages.wheels]] +name = "duckdb-1.4.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/25/5e/6f5ebaabc12c6db62f471f86b5c9c8debd57f11aa1b2acbbcc4c68683238/duckdb-1.4.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dfcc56a83420c0dec0b83e97a6b33addac1b7554b8828894f9d203955591218c" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "37.11.0" + +[[packages.wheels]] +name = "faker-37.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/46/8f4097b55e43af39e8e71e1f7aec59ff7398bca54d975c30889bc844719d/faker-37.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.121.3" + +[[packages.wheels]] +name = "fastapi-0.121.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/b6/4f620d7720fc0a754c8c1b7501d73777f6ba43b57c8ab99671f4d7441eb8/fastapi-0.121.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.19.1" + +[[packages.wheels]] +name = "filelock-3.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.59.2" + +[[packages.wheels]] +name = "fonttools-4.59.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d8/74/55e5c57c414fa3965fee5fc036ed23f26a5c4e9e10f7f078a54ff9c7dfb7/fonttools-4.59.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.50.1" + +[[packages.wheels]] +name = "google_genai-1.50.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/6b/78a7588d9a4f6c8c8ed326a32385d0566a3262c91c3f7a005e4231207894/google_genai-1.50.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.34.1" + +[[packages.wheels]] +name = "groq-0.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/64/592078e354946265430f4fbd337271338245531e14504a6c3623dcae59ad/groq-0.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25" + +[[packages]] +name = "guidata" +version = "3.13.1" + +[[packages.wheels]] +name = "guidata-3.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/3f/c62f76f88ce523ebeb80a25dc46c82ef600882624fd07788019b6500748a/guidata-3.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.27.0" + +[[packages.wheels]] +name = "hatchling-1.27.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/e7/ae38d7a6dfba0533684e0b2136817d667588ae3ec984c1a4e5df5eb88482/hatchling-1.27.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.0" + +[[packages.wheels]] +name = "holoviews-1.22.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/3d/e60b64b6d8af103739914e1d3e1e4bb3b464a4ec6435aa146ff63a24dc3c/holoviews-1.22.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.1.4" + +[[packages.wheels]] +name = "huggingface_hub-1.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/33/3f/969137c9d9428ed8bf171d27604243dd950a47cac82414826e2aebbc0a4c/huggingface_hub-1.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.11.3" + +[[packages.wheels]] +name = "hvplot-0.11.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/4a/3490c93a699f3d5e4d708748b494a44639dec973b609eb4e17c2d94bc733/hvplot-0.11.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.138.13" + +[[packages.wheels]] +name = "hypothesis-6.138.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/82/823c202c8b349ff31a0718e46ff98074bebfb3aa20813091cea07821c25f/hypothesis-6.138.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.1" + +[[packages.wheels]] +name = "ipycanvas-0.14.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/e2/9cb458d5afb33e5a4081f3ff50050c9fcc45854e44cf9c688b8709f2b1ef/ipycanvas-0.14.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.7.0" + +[[packages.wheels]] +name = "ipython-9.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/aa/62893d6a591d337aa59dcc4c6f6c842f1fe20cd72c8c5c1f980255243252/ipython-9.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.7" + +[[packages.wheels]] +name = "ipywidgets-8.1.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/6a/9166369a2f092bd286d24e6307de555d63616e8ddb373ebad2b5635ca4cd/ipywidgets-8.1.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "0.3.27" + +[[packages.wheels]] +name = "langchain-0.3.27-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d5/4861816a95b2f6993f1360cfb605aacb015506ee2090433a71de9cca8477/langchain-0.3.27-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798" + +[[packages]] +name = "langchain-core" +version = "0.3.78" + +[[packages.wheels]] +name = "langchain_core-0.3.78-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/a7/ff35c108c4863c1bb99724a4253ff2324aea5789d689dd59424c07df1199/langchain_core-0.3.78-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0" + +[[packages]] +name = "langchain-text-splitters" +version = "0.3.11" + +[[packages.wheels]] +name = "langchain_text_splitters-0.3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/0d/41a51b40d24ff0384ec4f7ab8dd3dcea8353c05c973836b5e289f1465d4f/langchain_text_splitters-0.3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393" + +[[packages]] +name = "langsmith" +version = "0.4.44" + +[[packages.wheels]] +name = "langsmith-0.4.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/78/7d00da455307c78ebfa1fee733f82d9f27a511fcc9fd62bb3e6e67cf8dde/langsmith-0.4.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0rc1" + +[[packages.wheels]] +name = "llvmlite-0.46.0rc1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1f/0e/5bbe599e64cfacbfbad20a45c37735c1b26f7f0fbcecb9dcc5f0a9165ee7/llvmlite-0.46.0rc1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28a7586f1757ba38f1be9c87f0b11c31828dc8b08c72534ca8a9d190c1717a75" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.7" + +[[packages.wheels]] +name = "matplotlib-3.10.7-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/77c95aaa9bb32c345cbb49626ad8eb15550cba2e6d4c88081a6c2ac7b08d/matplotlib-3.10.7-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4645fc5d9d20ffa3a39361fcdbcec731382763b623b72627806bf251b6388866" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.11.4" + +[[packages.wheels]] +name = "mizani-0.11.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/11/f3777ad46c5d92e3ead121c22ea45fafb6c3b2c1edca0c0c6494969c125c/mizani-0.11.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.18.2" + +[[packages.wheels]] +name = "mypy-1.18.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/25/bc/cc98767cffd6b2928ba680f3e5bc969c4152bf7c2d83f92f5a504b92b0eb/mypy-1.18.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "749b5f83198f1ca64345603118a6f01a4e99ad4bf9d103ddc5a3200cc4614adf" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/3a/be129764fe5f5cd89a5aa3f58e7a7471284715f4af71097a980d24ebec0a/mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.5" + +[[packages.wheels]] +name = "networkx-3.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.0rc1" + +[[packages.wheels]] +name = "numba-0.63.0rc1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/c4/b21438b31cec47e640c06dab6c13c903896e81eaf85219538d123fc96e7f/numba-0.63.0rc1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9cd09955580ca85443da7ba2791d2f0f1c5f191c52c3046fef6a60155e14c1b3" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.8.1" + +[[packages.wheels]] +name = "openai-2.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/4f/dbc0c124c40cb390508a82770fb9f6e3ed162560181a85089191a851c59a/openai-2.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.3" + +[[packages.wheels]] +name = "panel-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/f6/6dd8932f59f0e1e2649a2b2ae4a9e849218aa3d6ae8fdbbd01f5457b3b9b/panel-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.2.1" + +[[packages.wheels]] +name = "param-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/57/2b46b199482bbaaade2f978164577cf7c2fdc2782a7caf29fabd5265a84f/param-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.13.6" + +[[packages.wheels]] +name = "plotnine-0.13.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/b1/e1c84e68cf24e83c4d251122e04c48840be203dafb4727e738381cdefa74/plotnine-0.13.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.35.2" + +[[packages.wheels]] +name = "polars-1.35.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/9a/24e4b890c7ee4358964aa92c4d1865df0e8831f7df6abaa3a39914521724/polars-1.35.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e" + +[[packages]] +name = "polars-runtime-32" +version = "1.35.2" + +[[packages.wheels]] +name = "polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/dc/40/96a808ca5cc8707894e196315227f04a0c82136b7fb25570bc51ea33b88d/polars_runtime_32-1.35.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "protobuf" +version = "6.31.1" + +[[packages.wheels]] +name = "protobuf-6.31.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3c/79/755ff2d145aafec8d347bf18f95e4e81c00127f06d080135dfc86aea417c/pyarrow-22.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.4" + +[[packages.wheels]] +name = "pydantic-2.12.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.14.6" + +[[packages.wheels]] +name = "pythonqwt-0.14.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/34/2ad7293bc9d985f864e715f5dc6490da2d345b44dccb8a4f667412c3ac65/pythonqwt-0.14.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.4" + +[[packages.wheels]] +name = "pyviz_comms-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/cc/ba051cfaef2525054e3367f2d5ff4df38f8f775125b3eebb82af4060026b/pyviz_comms-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.8.1" + +[[packages.wheels]] +name = "quantecon-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/d6/3dd2bea4395988a2a614eebaafd2b478ffd36243e0dbc2bad4aaaf4c1bf7/quantecon-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.6" + +[[packages.wheels]] +name = "ruff-0.14.6-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fb/02/82240553b77fd1341f80ebb3eaae43ba011c7a91b4224a9f317d8e6591af/ruff-0.14.6-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-learn" +version = "1.7.2" + +[[packages.wheels]] +name = "scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8e/87/24f541b6d62b1794939ae6422f8023703bbf6900378b2b34e0b4384dfefd/scikit_learn-1.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1rc1" + +[[packages.wheels]] +name = "spyder-6.1.1rc1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/3d/184dc52d19612451f8f179aa18079342a4910c205ceb16c12187a20dcc18/spyder-6.1.1rc1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/df/b1/61da91f341871af14ea0a26bcffe6b2b8dbb8eed3cda3f804b4dcee54ce8/sspilib-0.4.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.47.2" + +[[packages.wheels]] +name = "starlette-0.47.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/1f/b876b1f83aef204198a42dc101613fefccb32258e5428b5f9259677864b4/starlette-0.47.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b" + +[[packages]] +name = "statsmodels" +version = "0.14.5" + +[[packages.wheels]] +name = "statsmodels-0.14.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8b/c0/b28d0fd0347ea38d3610052f479e4b922eb33bb8790817f93cd89e6e08ba/statsmodels-0.14.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "95af7a9c4689d514f4341478b891f867766f3da297f514b8c4adf08f4fa61d03" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.2" + +[[packages.wheels]] +name = "tornado-6.5.2-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.31.0" + +[[packages.wheels]] +name = "trio-0.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/5b/94237a3485620dbff9741df02ff6d8acaa5fdec67d81ab3f62e4d8511bf7/trio-0.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774" + +[[packages]] +name = "trove-classifiers" +version = "2025.5.9.12" + +[[packages.wheels]] +name = "trove_classifiers-2025.5.9.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/ef/c6deb083748be3bcad6f471b6ae983950c161890bf5ae1b2af80cc56c530/trove_classifiers-2025.5.9.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dot.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dot.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dot.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dotb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dotb4.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0dotb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0free.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0free.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0free.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0freeb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0freeb4.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0freeb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slim.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slim.toml new file mode 100644 index 00000000..1795fe74 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slim.toml @@ -0,0 +1,5733 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.10.0" + +[[packages.wheels]] +name = "asgiref-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/9c/fc2331f538fbf7eedba64b2052e99ccf9ba9d6888e2f41441ee28847004b/asgiref-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "4.0.2" + +[[packages.wheels]] +name = "astroid-4.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/ac/a85b4bfb4cf53221513e27f33cc37ad158fce02ac291d18bee6b49ab477d/astroid-4.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.1" + +[[packages.wheels]] +name = "asttokens-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "6.2.2" + +[[packages.wheels]] +name = "cachetools-6.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/46/eb6eca305c77a4489affe1c5d8f4cae82f285d9addd8de4ec084a7184221/cachetools-6.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/14/0871a0b407fa50257a79c57a608903ed50032c7619d9531451f7090a5ee3/cython-3.2.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/26/394276b71c7538445f29e792f589ab7379ae70fd26ff5577dfde71158e96/debugpy-1.8.17-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/41/abec537cc7c519121a2a83b9a6f180af8915fabb433777dc147744513e74/duckdb-1.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.3.1" + +[[packages.wheels]] +name = "eval_type_backport-0.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/22/fdc2e30d43ff853720042fa15baa3e6122722be1a7950a98233ebb55cd71/eval_type_backport-0.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/ee/f434fe7749360497c52b7dcbcfdbccdaab0a71c59f19d572576066717122/fonttools-4.61.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.4" + +[[packages.wheels]] +name = "guidata-3.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/e4/4adcf39f557dae5dfad2d184fa887ee2343cb8c042c7d2f4099030b5bb3a/guidata-3.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.3" + +[[packages.wheels]] +name = "joblib-1.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.1" + +[[packages.wheels]] +name = "jupyterlab-4.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/c3/acced767eecc11a70c65c45295db5396c4f0c1937874937d5a76d7b177b6/jupyterlab-4.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.13.0" + +[[packages.wheels]] +name = "keras-3.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/d2/c6734cbf15288d75722ed3eb9d8ebf9204e48379c08160fd40fcd58a0c8b/keras-3.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/83/c1/bdf8b626a58e9495b10cb6b8f5f087219df1e9b4a872139ea3f11d1a5a61/librt-0.6.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/a8/e61a8c2b3cc7a597073d9cde1fcbb567e9d827f1db30c93cf80422eac70d/llvmlite-0.46.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/b0/c33921e73aaa0106224e5a34822411bea38046188eb781637f5a5b07e269/mypy-1.19.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/3a/be129764fe5f5cd89a5aa3f58e7a7471284715f4af71097a980d24ebec0a/mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.13.0" + +[[packages.wheels]] +name = "narwhals-2.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/0d/1861d1599571974b15b025e12b142d8e6b42ad66c8a07a89cb0fc21f1e03/narwhals-2.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.1" + +[[packages.wheels]] +name = "notebook-7.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/86/ca516cb58ad2cb2064124d31cf0fd8b012fca64bebeb26da2d2ddf03fc79/notebook-7.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/5f/4d0c9e756732577a52211f31da13a3d943d185f7fb90723f56d79c696caa/numba-0.63.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/0a86195ee7a1a96c088aefc8504385e881cf56f4563ed81bafe21cbf1fb0/ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.3" + +[[packages.wheels]] +name = "prince-0.16.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/86/8dd61a7715d39fe1051af1df350f99222935e17a7c7400a361dc54bd98b0/prince-0.16.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3c/79/755ff2d145aafec8d347bf18f95e4e81c00127f06d080135dfc86aea417c/pyarrow-22.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.1" + +[[packages.wheels]] +name = "pybind11-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/8a/37362fc2b949d5f733a8b0f2ff51ba423914cabefe69f1d1b6aab710f5fe/pybind11-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "4.0.4" + +[[packages.wheels]] +name = "pylint-4.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/92/d40f5d937517cc489ad848fc4414ecccc7592e4686b9071e09e64f5e378e/pylint-4.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/13/bc/e4522f429c45a3b6ad28185849dd76e5c8718b780883c4795e7ee41841ae/pyogrio-0.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.14.0" + +[[packages.wheels]] +name = "python_lsp_server-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/cf/587f913335e3855e0ddca2aee7c3f9d5de2d75a1e23434891e9f74783bcd/python_lsp_server-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0" + +[[packages.wheels]] +name = "scikit_image-0.26.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/8d/5b/0671dc91c0c79340c3fe202f0549c7d3681eb7640fe34ab68a5f090a7c7f/scikit_image-0.26.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0660b83968c15293fd9135e8d860053ee19500d52bf55ca4fb09de595a1af650" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/18/a8def8f91b18cd1ba6e05dbe02540168cb24d47e8dcf69e8d00b7da42a08/scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/76/3733c2bf1c2022d6bad92ed2a0146e2129ef992afa87708d20b1b36c5a1d/scs-3.2.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.7.0" + +[[packages.wheels]] +name = "skrub-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/b2/6032bf79d0acdf57fbd4885ab33789fd21c6003487e91994626a1b106fba/skrub-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.2" + +[[packages.wheels]] +name = "spyder-6.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/01/43495f870890438a378d30bb57478be3f26a5f1d02f396eb52d08f83ed3e/spyder-6.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.5.0" + +[[packages.wheels]] +name = "sspilib-0.5.0-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/6a/a11abf90172ff580ac2f9ade3496d868e05e851c4ecf487dd5baeb966b1d/sspilib-0.5.0-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/33/f1652d0c59fa51de18492ee2345b65372550501ad061daa38f950be390b6/statsmodels-0.14.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721" + +[[packages]] +name = "streamlit" +version = "1.52.2" + +[[packages.wheels]] +name = "streamlit-1.52.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/95/6b7873f0267973ebd55ba9cd33a690b35a116f2779901ef6185a0e21864d/streamlit-1.52.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8" + +[[packages]] +name = "streamlit-bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "streamlit_bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/10/a9a233afb4f6285246512fe2d4ea62212b1c14d493a29ef35e0ee7993bc4/streamlit_bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.4" + +[[packages.wheels]] +name = "tornado-6.5.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.20.1" + +[[packages.wheels]] +name = "typer-0.20.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/52/1f2df7e7d1be3d65ddc2936d820d4a3d9777a54f4204f5ca46b8513eff77/typer-0.20.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.15" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366" + +[[packages]] +name = "wordcloud" +version = "1.9.5" + +[[packages.wheels]] +name = "wordcloud-1.9.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6b/4e/938315f85438df0e225cb613d783301585bf1adf8d5fe869dca18b029e71/wordcloud-1.9.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cda8de69df5fac5a90aea3646993b03b4a920d8aa6454b6f6e58c341397b9ca6" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/02/5d/a19552fbc6ad4cb54ff953c3908bbc095f4a921bc569433d791f755186f1/xxhash-3.6.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimb4.toml new file mode 100644 index 00000000..191f50c8 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimb4.toml @@ -0,0 +1,5722 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/14/0871a0b407fa50257a79c57a608903ed50032c7619d9531451f7090a5ee3/cython-3.2.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "datashader" +version = "0.18.2" + +[[packages.wheels]] +name = "datashader-0.18.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/0e/b11ad5fd77e3dd0baad9cac3184315be7654ae401e3b0b0c324503f23d96/datashader-0.18.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b0/26/394276b71c7538445f29e792f589ab7379ae70fd26ff5577dfde71158e96/debugpy-1.8.17-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/41/abec537cc7c519121a2a83b9a6f180af8915fabb433777dc147744513e74/duckdb-1.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/ee/f434fe7749360497c52b7dcbcfdbccdaab0a71c59f19d572576066717122/fonttools-4.61.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.3" + +[[packages.wheels]] +name = "guidata-3.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/6f/0572785acd9266fc3adb3245cec5e9d807adc7b0c612cb096bacd4b6eeac/guidata-3.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/83/c1/bdf8b626a58e9495b10cb6b8f5f087219df1e9b4a872139ea3f11d1a5a61/librt-0.6.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/a8/e61a8c2b3cc7a597073d9cde1fcbb567e9d827f1db30c93cf80422eac70d/llvmlite-0.46.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/b0/c33921e73aaa0106224e5a34822411bea38046188eb781637f5a5b07e269/mypy-1.19.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/21/3a/be129764fe5f5cd89a5aa3f58e7a7471284715f4af71097a980d24ebec0a/mysql_connector_python-9.5.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/5f/4d0c9e756732577a52211f31da13a3d943d185f7fb90723f56d79c696caa/numba-0.63.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/0a86195ee7a1a96c088aefc8504385e881cf56f4563ed81bafe21cbf1fb0/ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.2" + +[[packages.wheels]] +name = "prince-0.16.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/fe/92068ae56c8a88ee9123234014233561917dcd5c56c26a2c99f014444d36/prince-0.16.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "protobuf" +version = "6.33.1" + +[[packages.wheels]] +name = "protobuf-6.33.1-cp310-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3c/79/755ff2d145aafec8d347bf18f95e4e81c00127f06d080135dfc86aea417c/pyarrow-22.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/13/bc/e4522f429c45a3b6ad28185849dd76e5c8718b780883c4795e7ee41841ae/pyogrio-0.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0rc1" + +[[packages.wheels]] +name = "scikit_image-0.26.0rc1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/16/1ccd25db2e6ed2e7f3fe5ff6e232404e47be99a956bac542b49d58e25c5d/scikit_image-0.26.0rc1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "290a41ff053a1a832842fdcb469f0fb829c8a344137487f40598cdb96422d0f4" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/18/a8def8f91b18cd1ba6e05dbe02540168cb24d47e8dcf69e8d00b7da42a08/scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/76/3733c2bf1c2022d6bad92ed2a0146e2129ef992afa87708d20b1b36c5a1d/scs-3.2.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1" + +[[packages.wheels]] +name = "spyder-6.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/10/79cd23b5069d4aed2390cdffa831f99b45f5b4a8f7b272d7a887f5e487e1/spyder-6.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/df/b1/61da91f341871af14ea0a26bcffe6b2b8dbb8eed3cda3f804b4dcee54ce8/sspilib-0.4.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/33/f1652d0c59fa51de18492ee2345b65372550501ad061daa38f950be390b6/statsmodels-0.14.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721" + +[[packages]] +name = "streamlit" +version = "1.52.1" + +[[packages.wheels]] +name = "streamlit-1.52.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/d4/cdafd4cc940937410f465ca7a77dd34237182c2ddece624e08db959496f8/streamlit-1.52.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c" + +[[packages]] +name = "streamlit-bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "streamlit_bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/10/a9a233afb4f6285246512fe2d4ea62212b1c14d493a29ef35e0ee7993bc4/streamlit_bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.3" + +[[packages.wheels]] +name = "tornado-6.5.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/98/4f7f938606e21d0baea8c6c39a7c8e95bdf8e50b0595b1bb6f0de2af7a6e/tornado-6.5.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/02/5d/a19552fbc6ad4cb54ff953c3908bbc095f4a921bc569433d791f755186f1/xxhash-3.6.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimf.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimf.toml new file mode 100644 index 00000000..816678e9 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimf.toml @@ -0,0 +1,4996 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/0f/27e4fdde899e1e90e35eeff56b54ed63826435ad6cdb06b09ed312d1b3fa/aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.10.0" + +[[packages.wheels]] +name = "asgiref-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/9c/fc2331f538fbf7eedba64b2052e99ccf9ba9d6888e2f41441ee28847004b/asgiref-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "4.0.2" + +[[packages.wheels]] +name = "astroid-4.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/ac/a85b4bfb4cf53221513e27f33cc37ad158fce02ac291d18bee6b49ab477d/astroid-4.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b" + +[[packages]] +name = "asttokens" +version = "3.0.1" + +[[packages.wheels]] +name = "asttokens-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3f/61/3291c2243ae0229e5bca5d19f4032cecad5dfb05a2557169d3a69dc0ba91/bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/5d/aed32636ed30a6e7f9efd6ad14e2a0b0d687ae7c8c7ec4e4a557174b895c/black-25.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "6.2.2" + +[[packages.wheels]] +name = "cachetools-6.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/46/eb6eca305c77a4489affe1c5d8f4cae82f285d9addd8de4ec084a7184221/cachetools-6.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "coloredlogs" +version = "15.0.1" + +[[packages.wheels]] +name = "coloredlogs-15.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f6/30/640f34ccd4d2a1bc88367b54b926b781b5a018d65f404d409aba76a84b1c/cryptography-46.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/41/54fd429ff8147475fc24ca43246f85d78fb4e747c27f227e68f1594648f1/cython-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "06a1317097f540d3bb6c7b81ed58a0d8b9dbfa97abf39dfd4c22ee87a6c7241e" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/b4/b7ce3d3cd20337becfec978ecfa6d0ef64884d0cf32d44edfed8700914b9/cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.3.1" + +[[packages.wheels]] +name = "eval_type_backport-0.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/22/fdc2e30d43ff853720042fa15baa3e6122722be1a7950a98233ebb55cd71/eval_type_backport-0.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/ea/e6b9ac610451ee9f04477c311ad126de971f6112cb579fa391d2a8edb00b/fonttools-4.61.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67d841aa272be5500de7f447c40d1d8452783af33b4c3599899319f6ef9ad3c1" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/b5/33764714923fa1ff922770f7ed18c2daae034d21ae6e10dbf4347c854154/hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.1" + +[[packages.wheels]] +name = "httpx_sse-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/0a/6269e3473b09aed2dab8aa1a600c70f31f00ae1349bee30658f7e358a159/httpx_sse-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cba42174344c3a5b06f255ce65b350880f962d99ead85e776f23c6618a377a37" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "humanfriendly" +version = "10.0" + +[[packages.wheels]] +name = "humanfriendly-10.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/59/81badb169212f30f47f817dfaabf965bc9b8204fed906fab58104ee541f9/jiter-0.11.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1" + +[[packages]] +name = "joblib" +version = "1.5.3" + +[[packages.wheels]] +name = "joblib-1.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.1" + +[[packages.wheels]] +name = "jupyterlab-4.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/c3/acced767eecc11a70c65c45295db5396c4f0c1937874937d5a76d7b177b6/jupyterlab-4.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/7d/17ebd7a13d937ee466a68c999f249d8c2e61160781c5391c8e3327c4f18c/librt-0.6.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd08422c485df288c5c899d2adbbba15e317fc30f627119c99c2111da1920fb5" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/1a/b248b355834c8e32614650b8008c69ffeb0ceb149c793961dd8c0b991bb3/lxml-6.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markdownify" +version = "1.2.0" + +[[packages.wheels]] +name = "markdownify-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e2/7af643acb4cae0741dffffaa7f3f7c9e7ab4046724543ba1777c401d821c/markdownify-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/e6/76f2813d31f032e65f6f797e3f2f6e4aab95b65015924b1c51370395c28a/matplotlib-3.10.8-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.4" + +[[packages.wheels]] +name = "ml_dtypes-0.5.4-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/44/f4d18446eacb20ea11e82f133ea8f86e2bf2891785b67d9da8d0ab0ef525/ml_dtypes-0.5.4-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4381fe2f2452a2d7589689693d3162e876b3ddb0a832cde7a414f8e1adf7eab1" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/86/d0071e94987f8db59d4eeb386ddc64d0bb9b10820a8d82bcd3e53eeb2da6/msgpack-1.1.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/8f/0a60e501584145588be1af5cc829265701ba3c35a64aec8e07cbb71d39bb/multidict-6.7.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd" + +[[packages]] +name = "multipledispatch" +version = "1.0.0" + +[[packages.wheels]] +name = "multipledispatch-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/c0/00c9809d8b9346eb238a6bbd5f83e846a4ce4503da94a4c08cb7284c325b/multipledispatch-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/0e/fe228ed5aeab470c6f4eb82481837fadb642a5aa95cc8215fd2214822c10/mypy-1.19.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c01c99d626380752e527d5ce8e69ffbba2046eb8a060db0329690849cf9b6f9" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/e1/45373c06781340c7b74fe9b88b85278ac05321889a307eaa5be079a997d4/mysql_connector_python-9.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.13.0" + +[[packages.wheels]] +name = "narwhals-2.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/0d/1861d1599571974b15b025e12b142d8e6b42ad66c8a07a89cb0fc21f1e03/narwhals-2.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/ae/95c52b5a75da429f11ca8902c2128f64daafdc77758d370e4cc310ecda55/nh3-0.3.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.1" + +[[packages.wheels]] +name = "notebook-7.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/86/ca516cb58ad2cb2064124d31cf0fd8b012fca64bebeb26da2d2ddf03fc79/notebook-7.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numpy" +version = "2.4.0rc1" + +[[packages.wheels]] +name = "numpy-2.4.0rc1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/24/cabc7a43cd4fe9cdcc373fd218ce31f72e4ebf2f5f6cccbb02b112751fcb/numpy-2.4.0rc1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5b01cb0d1ee25acb05e38ae04133032f6e9512b40b53e549b2307d8ba8991587" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "3.0.0rc1" + +[[packages.wheels]] +name = "pandas-3.0.0rc1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/f8/aaaf23563baada8c5cea7f5d46b77c8aa71e7af683c1b731de1c719201b5/pandas-3.0.0rc1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34d8098a4e3ce9c0d6c235072be3ba3a94f42da4a884aa5ccdcde1f0aad47933" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/73/e29aa0c9c666cf787628d3f0dcf379f4791fba79f4936d02f8b37165bdf8/pillow-12.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.3" + +[[packages.wheels]] +name = "prince-0.16.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/86/8dd61a7715d39fe1051af1df350f99222935e17a7c7400a361dc54bd98b0/prince-0.16.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[packages.sdist] +name = "psutil-7.1.1.tar.gz" +url = "https://files.pythonhosted.org/packages/89/fc/889242351a932d6183eec5df1fc6539b6f36b6a88444f1e63f18668253aa/psutil-7.1.1.tar.gz" + +[packages.sdist.hashes] +sha256 = "092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/68/ad28d0c0a089bcd813fc6355a448acf18c897b4ea02d33276b5f740c2a07/psygnal-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/03/f335d6c52b4a4761bcc83499789a1e2e16d9d201a58c327a9b5cc9a41bd9/pyarrow-22.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0c34fe18094686194f204a3b1787a27456897d8a2d62caf84b61e8dfbc0252ae" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.1" + +[[packages.wheels]] +name = "pybind11-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/8a/37362fc2b949d5f733a8b0f2ff51ba423914cabefe69f1d1b6aab710f5fe/pybind11-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pyct" +version = "0.5.0" + +[[packages.wheels]] +name = "pyct-0.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/e7/c7c1e9e1b6b23ca1db7af3c6826d57d8da883021f751edcc9c82143b127a/pyct-0.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "4.0.4" + +[[packages.wheels]] +name = "pylint-4.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/92/d40f5d937517cc489ad848fc4414ecccc7592e4686b9071e09e64f5e378e/pylint-4.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/c8/bc64321711e19bd48ea3371f0082f10295c433833245d73e7606d3b9afbe/pymongo-4.15.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c4/2c/942477957fba22da7bf99131850e5ebdff66623418ab48964e78a7a8293e/pynacl-1.6.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/c7/ee98c62050de4aa8bafb6eb1e11b95e0b0c898bd5930137c6dc776e06a9b/pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/31/93/4641dc5d952f6bdb71dabad2c50e3f8a5d58396cdea6ff8f8a08bfd4f4a6/pyogrio-0.12.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5399f66730978d8852ef5f44dbafa0f738e7f28f4f784349f36830b69a9d2134" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/56/413240dd5149dd3291eda55aa55a659da4431244a2fd1319d0ae89407cfb/pyproj-3.7.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1914e29e27933ba6f9822663ee0600f169014a2859f851c054c88cf5ea8a333c" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyreadline3" +version = "3.5.4" + +[[packages.wheels]] +name = "pyreadline3-3.5.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.14.0" + +[[packages.wheels]] +name = "python_lsp_server-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/cf/587f913335e3855e0ddca2aee7c3f9d5de2d75a1e23434891e9f74783bcd/python_lsp_server-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/d2/a8065103f5e2e613b916489e6c85af6402a1ec64f346d1429e2d32cb8d03/pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/24/c6907c5bb06043df98ad6a0a0ff5db2e0affcecbc3b15c42404393a3f72a/pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/97/433b2d98e97abd9fff1c470a109b311669f44cdec8d0d5aa250aceaed1fb/rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ef/a0/c84475e14a2829e9b0864ebf77c3f7da909df9d8acfe2bb540ff0072047c/regex-2025.10.23-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/7d/97119da51cb1dd3f2f3c0805f155a3aa4a95fa44fe7d78ae15e69edf4f34/rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0" + +[[packages.wheels]] +name = "scikit_image-0.26.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/da/ca/918d8d306bd43beacff3b835c6d96fac0ae64c0857092f068b88db531a7c/scikit_image-0.26.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b702c3bb115e1dcf4abf5297429b5c90f2189655888cbed14921f3d26f81d3a4" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/4d/748c9e2872637a57981a04adc038dacaa16ba8ca887b23e34953f0b3f742/scikit_learn-1.8.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00d6f1d66fbcf4eba6e356e1420d33cc06c70a45bb1363cd6f6a8e4ebbbdece2" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/82/8d0e39f62764cce5ffd5284131e109f07cf8955aef9ab8ed4e3aa5e30539/scipy-1.16.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/d4/752ee94d27a400199b6fd952fe5f0253ae4b9eff565b3c6476fa6378f827/scs-3.2.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23577f318d25cd623fedbe7f3330189f6d5f82c855db08e3b32bf77f43efdc4b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/f6/f09272a71976dfc138129b8faf435d064a811ae2f708cb147dccdf7aacdb/shapely-2.1.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0036ac886e0923417932c2e6369b6c52e38e0ff5d9120b90eef5cd9a5fc5cae9" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.7.0" + +[[packages.wheels]] +name = "skrub-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/b2/6032bf79d0acdf57fbd4885ab33789fd21c6003487e91994626a1b106fba/skrub-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sspilib" +version = "0.5.0" + +[[packages.wheels]] +name = "sspilib-0.5.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c4/d8/8c4ba75f925fd9651cb855c47e0e67931a175d6fd41e569193a8d58133ac/sspilib-0.5.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7d7724d5dbb31f68e62465863dfb862fe2793281ce40d0c8f2dc60c8f07998f2" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/df/c7891ef9d2712ad774777271d39fdef63941ffba0a9d59b7ad1fd2765e57/tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.4" + +[packages.sdist] +name = "tornado-6.5.4.tar.gz" +url = "https://files.pythonhosted.org/packages/37/1d/0a336abf618272d53f62ebe274f712e213f5a03c0b2339575430b8362ef2/tornado-6.5.4.tar.gz" + +[packages.sdist.hashes] +sha256 = "a22fa9047405d03260b483980635f0b041989d8bcc9a313f8fe18b411d84b1d7" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.20.1" + +[[packages.wheels]] +name = "typer-0.20.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/52/1f2df7e7d1be3d65ddc2936d820d4a3d9777a54f4204f5ca46b8513eff77/typer-0.20.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/aa/03/b19c6176bdf1dc13ed84b886e99677a52764861b6cc023d5e7b6ebda249d/ujson-5.11.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.15" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366" + +[[packages]] +name = "wordcloud" +version = "1.9.5" + +[[packages.wheels]] +name = "wordcloud-1.9.5-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ea/47/5f27d088000e301d174d33a6dd852f7ea6bae6e914e9971d24a9460fa35e/wordcloud-1.9.5-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e19c3883165967ad4e0cb7baa9208fdca758cfd0f75d68743a9390269180d47a" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/3a/07cd60a9d26fe73efead61c7830af975dfdba8537632d410462672e4432b/wrapt-2.0.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimfb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimfb4.toml new file mode 100644 index 00000000..69098468 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0slimfb4.toml @@ -0,0 +1,4699 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/0f/27e4fdde899e1e90e35eeff56b54ed63826435ad6cdb06b09ed312d1b3fa/aiohttp-3.13.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3f/61/3291c2243ae0229e5bca5d19f4032cecad5dfb05a2557169d3a69dc0ba91/bcrypt-5.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/5d/aed32636ed30a6e7f9efd6ad14e2a0b0d687ae7c8c7ec4e4a557174b895c/black-25.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorcet" +version = "3.1.0" + +[[packages.wheels]] +name = "colorcet-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c6/9963d588cc3d75d766c819e0377a168ef83cf3316a92769971527a1ad1de/colorcet-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f6/30/640f34ccd4d2a1bc88367b54b926b781b5a018d65f404d409aba76a84b1c/cryptography-46.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/41/54fd429ff8147475fc24ca43246f85d78fb4e747c27f227e68f1594648f1/cython-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "06a1317097f540d3bb6c7b81ed58a0d8b9dbfa97abf39dfd4c22ee87a6c7241e" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/46/b4/b7ce3d3cd20337becfec978ecfa6d0ef64884d0cf32d44edfed8700914b9/cytoolz-1.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162" + +[[packages]] +name = "dask" +version = "2025.11.0" + +[[packages.wheels]] +name = "dask-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1d/54/a46920229d12c3a6e9f0081d1bdaeffad23c1826353ace95714faee926e5/dask-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distributed" +version = "2025.11.0" + +[[packages.wheels]] +name = "distributed-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/46/ec/da78855318971c2be94d0283a41de6941a6b9f16146fb00babc74903ae01/distributed-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flatbuffers" +version = "25.2.10" + +[[packages.wheels]] +name = "flatbuffers-25.2.10-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b8/25/155f9f080d5e4bc0082edfda032ea2bc2b8fab3f4d25d46c1e9dd22a1a89/flatbuffers-25.2.10-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/18/ea/e6b9ac610451ee9f04477c311ad126de971f6112cb579fa391d2a8edb00b/fonttools-4.61.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "67d841aa272be5500de7f447c40d1d8452783af33b4c3599899319f6ef9ad3c1" + +[[packages]] +name = "foundry-local-sdk" +version = "0.5.1" + +[[packages.wheels]] +name = "foundry_local_sdk-0.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ed/6b/76a7fe8f9f4c52cc84eaa1cd1b66acddf993496d55d6ea587bf0d0854d1c/foundry_local_sdk-0.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "gitdb" +version = "4.0.12" + +[[packages.wheels]] +name = "gitdb-4.0.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf" + +[[packages]] +name = "gitpython" +version = "3.1.45" + +[[packages.wheels]] +name = "gitpython-3.1.45-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/01/61/d4b89fec821f72385526e1b9d9a3a0385dda4a72b206d28049e2c7cd39b8/gitpython-3.1.45-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/b5/33764714923fa1ff922770f7ed18c2daae034d21ae6e10dbf4347c854154/hf_xet-1.2.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc" + +[[packages]] +name = "holoviews" +version = "1.22.1" + +[[packages.wheels]] +name = "holoviews-1.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/ab/a6aa43d45ceb88adc0e8c1358fa6935c6e6a5895537431dec67524ca2ccd/holoviews-1.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hvplot" +version = "0.12.1" + +[[packages.wheels]] +name = "hvplot-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/f5/99be28b5d19644343f51391841dadf48b91ade96c1885e1630727cbcb4bf/hvplot-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/36/59/81badb169212f30f47f817dfaabf965bc9b8204fed906fab58104ee541f9/jiter-0.11.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891" + +[[packages]] +name = "lazy-loader" +version = "0.4" + +[[packages.wheels]] +name = "lazy_loader-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/7d/17ebd7a13d937ee466a68c999f249d8c2e61160781c5391c8e3327c4f18c/librt-0.6.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dd08422c485df288c5c899d2adbbba15e317fc30f627119c99c2111da1920fb5" + +[[packages]] +name = "linkify-it-py" +version = "2.0.3" + +[[packages.wheels]] +name = "linkify_it_py-2.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/1e/b832de447dee8b582cac175871d2f6c3d5077cc56d5575cadba1fd1cccfa/linkify_it_py-2.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/1a/b248b355834c8e32614650b8008c69ffeb0ceb149c793961dd8c0b991bb3/lxml-6.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7c/e6/76f2813d31f032e65f6f797e3f2f6e4aab95b65015924b1c51370395c28a/matplotlib-3.10.8-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mdit-py-plugins" +version = "0.5.0" + +[[packages.wheels]] +name = "mdit_py_plugins-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/86/dd6e5db36df29e76c7a7699123569a4a18c1623ce68d826ed96c62643cae/mdit_py_plugins-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "msgpack" +version = "1.1.2" + +[[packages.wheels]] +name = "msgpack-1.1.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/15/86/d0071e94987f8db59d4eeb386ddc64d0bb9b10820a8d82bcd3e53eeb2da6/msgpack-1.1.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/8f/0a60e501584145588be1af5cc829265701ba3c35a64aec8e07cbb71d39bb/multidict-6.7.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/09/0e/fe228ed5aeab470c6f4eb82481837fadb642a5aa95cc8215fd2214822c10/mypy-1.19.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c01c99d626380752e527d5ce8e69ffbba2046eb8a060db0329690849cf9b6f9" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "mysql-connector-python" +version = "9.5.0" + +[[packages.wheels]] +name = "mysql_connector_python-9.5.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/95/e1/45373c06781340c7b74fe9b88b85278ac05321889a307eaa5be079a997d4/mysql_connector_python-9.5.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/ae/95c52b5a75da429f11ca8902c2128f64daafdc77758d370e4cc310ecda55/nh3-0.3.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numpy" +version = "2.4.0rc1" + +[[packages.wheels]] +name = "numpy-2.4.0rc1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a1/24/cabc7a43cd4fe9cdcc373fd218ce31f72e4ebf2f5f6cccbb02b112751fcb/numpy-2.4.0rc1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5b01cb0d1ee25acb05e38ae04133032f6e9512b40b53e549b2307d8ba8991587" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "3.0.0rc0" + +[[packages.wheels]] +name = "pandas-3.0.0rc0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/49/c2/a31d18862f8e7843587b76e327dc8ec732e09e026dd2afe1665004222750/pandas-3.0.0rc0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "eed419f07d5cf00d4364ba27cf9e8235ec7d9ae8e4e9abb638eefac31bcdb9c2" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "panel" +version = "1.8.4" + +[[packages.wheels]] +name = "panel-1.8.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/39/796ffe83cf6a1a6458f42db0a5c2ea7671478651e8945386e89625af5fdc/panel-1.8.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "param" +version = "2.3.1" + +[[packages.wheels]] +name = "param-2.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/da/9d476e9aadfa854719f3cb917e3f7a170a657a182d8d1d6e546594a4872b/param-2.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/73/e29aa0c9c666cf787628d3f0dcf379f4791fba79f4936d02f8b37165bdf8/pillow-12.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[packages.sdist] +name = "psutil-7.1.1.tar.gz" +url = "https://files.pythonhosted.org/packages/89/fc/889242351a932d6183eec5df1fc6539b6f36b6a88444f1e63f18668253aa/psutil-7.1.1.tar.gz" + +[packages.sdist.hashes] +sha256 = "092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/68/ad28d0c0a089bcd813fc6355a448acf18c897b4ea02d33276b5f740c2a07/psygnal-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyarrow" +version = "22.0.0" + +[[packages.wheels]] +name = "pyarrow-22.0.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7b/03/f335d6c52b4a4761bcc83499789a1e2e16d9d201a58c327a9b5cc9a41bd9/pyarrow-22.0.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0c34fe18094686194f204a3b1787a27456897d8a2d62caf84b61e8dfbc0252ae" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydeck" +version = "0.9.1" + +[[packages.wheels]] +name = "pydeck-0.9.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/c8/bc64321711e19bd48ea3371f0082f10295c433833245d73e7606d3b9afbe/pymongo-4.15.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/c4/2c/942477957fba22da7bf99131850e5ebdff66623418ab48964e78a7a8293e/pynacl-1.6.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ba/c7/ee98c62050de4aa8bafb6eb1e11b95e0b0c898bd5930137c6dc776e06a9b/pyodbc-5.3.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/31/93/4641dc5d952f6bdb71dabad2c50e3f8a5d58396cdea6ff8f8a08bfd4f4a6/pyogrio-0.12.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5399f66730978d8852ef5f44dbafa0f738e7f28f4f784349f36830b69a9d2134" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/56/413240dd5149dd3291eda55aa55a659da4431244a2fd1319d0ae89407cfb/pyproj-3.7.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1914e29e27933ba6f9822663ee0600f169014a2859f851c054c88cf5ea8a333c" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pyviz-comms" +version = "3.0.6" + +[[packages.wheels]] +name = "pyviz_comms-3.0.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/13/5a/f8c0868199bbb231a02616286ce8a4ccb85f5387b9215510297dcfedd214/pyviz_comms-3.0.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/68/d2/a8065103f5e2e613b916489e6c85af6402a1ec64f346d1429e2d32cb8d03/pywavelets-1.9.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/de/24/c6907c5bb06043df98ad6a0a0ff5db2e0affcecbc3b15c42404393a3f72a/pywinpty-3.0.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cd/97/433b2d98e97abd9fff1c470a109b311669f44cdec8d0d5aa250aceaed1fb/rapidfuzz-3.14.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ef/a0/c84475e14a2829e9b0864ebf77c3f7da909df9d8acfe2bb540ff0072047c/regex-2025.10.23-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/32/7d/97119da51cb1dd3f2f3c0805f155a3aa4a95fa44fe7d78ae15e69edf4f34/rpds_py-0.27.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-image" +version = "0.26.0rc1" + +[[packages.wheels]] +name = "scikit_image-0.26.0rc1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/77/56/bbc37b5c7299b43f4692d686064412a07fac46e585cb15c602e4dfdd5f36/scikit_image-0.26.0rc1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "89249aa0fb336de32b216cbcc6359dd8364af0824578854edcdca8b2dda673a2" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/35/4d/748c9e2872637a57981a04adc038dacaa16ba8ca887b23e34953f0b3f742/scikit_learn-1.8.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "00d6f1d66fbcf4eba6e356e1420d33cc06c70a45bb1363cd6f6a8e4ebbbdece2" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/61/82/8d0e39f62764cce5ffd5284131e109f07cf8955aef9ab8ed4e3aa5e30539/scipy-1.16.3-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/27/d4/752ee94d27a400199b6fd952fe5f0253ae4b9eff565b3c6476fa6378f827/scs-3.2.9-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23577f318d25cd623fedbe7f3330189f6d5f82c855db08e3b32bf77f43efdc4b" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9a/f6/f09272a71976dfc138129b8faf435d064a811ae2f708cb147dccdf7aacdb/shapely-2.1.2-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0036ac886e0923417932c2e6369b6c52e38e0ff5d9120b90eef5cd9a5fc5cae9" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "smmap" +version = "5.0.2" + +[[packages.wheels]] +name = "smmap-5.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tblib" +version = "3.1.0" + +[[packages.wheels]] +name = "tblib-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/44/aa5c8b10b2cce7a053018e0d132bd58e27527a0243c4985383d5b6fd93e9/tblib-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tifffile" +version = "2025.3.30" + +[[packages.wheels]] +name = "tifffile-2025.3.30-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6e/be/10d23cfd4078fbec6aba768a357eff9e70c0b6d2a07398425985c524ad2a/tifffile-2025.3.30-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/af/df/c7891ef9d2712ad774777271d39fdef63941ffba0a9d59b7ad1fd2765e57/tiktoken-0.12.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "toml" +version = "0.10.2" + +[[packages.wheels]] +name = "toml-0.10.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.3" + +[packages.sdist] +name = "tornado-6.5.3.tar.gz" +url = "https://files.pythonhosted.org/packages/7f/2e/3d22d478f27cb4b41edd4db7f10cd7846d0a28ea443342de3dba97035166/tornado-6.5.3.tar.gz" + +[packages.sdist.hashes] +sha256 = "16abdeb0211796ffc73765bc0a20119712d68afeeaf93d1a3f2edf6b3aee8d5a" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "uc-micro-py" +version = "1.0.3" + +[[packages.wheels]] +name = "uc_micro_py-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/aa/03/b19c6176bdf1dc13ed84b886e99677a52764861b6cc023d5e7b6ebda249d/ujson-5.11.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/01/3a/07cd60a9d26fe73efead61c7830af975dfdba8537632d410462672e4432b/wrapt-2.0.1-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314t-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zict" +version = "3.0.0" + +[[packages.wheels]] +name = "zict-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/ab/11a76c1e2126084fde2639514f24e6111b789b0bfa4fc6264a8975c7e1f1/zict-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl_wheels.toml new file mode 100644 index 00000000..cf7116d2 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whl_wheels.toml @@ -0,0 +1,5337 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "6.0.0" + +[[packages.wheels]] +name = "altair-6.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.10.0" + +[[packages.wheels]] +name = "asgiref-3.10.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/9c/fc2331f538fbf7eedba64b2052e99ccf9ba9d6888e2f41441ee28847004b/asgiref-3.10.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "4.0.2" + +[[packages.wheels]] +name = "astroid-4.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/ac/a85b4bfb4cf53221513e27f33cc37ad158fce02ac291d18bee6b49ab477d/astroid-4.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.1" + +[[packages.wheels]] +name = "asttokens-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "6.2.2" + +[[packages.wheels]] +name = "cachetools-6.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/46/eb6eca305c77a4489affe1c5d8f4cae82f285d9addd8de4ec084a7184221/cachetools-6.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/14/0871a0b407fa50257a79c57a608903ed50032c7619d9531451f7090a5ee3/cython-3.2.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/41/abec537cc7c519121a2a83b9a6f180af8915fabb433777dc147744513e74/duckdb-1.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.3.1" + +[[packages.wheels]] +name = "eval_type_backport-0.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/22/fdc2e30d43ff853720042fa15baa3e6122722be1a7950a98233ebb55cd71/eval_type_backport-0.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/ee/f434fe7749360497c52b7dcbcfdbccdaab0a71c59f19d572576066717122/fonttools-4.61.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.4" + +[[packages.wheels]] +name = "guidata-3.13.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/e4/4adcf39f557dae5dfad2d184fa887ee2343cb8c042c7d2f4099030b5bb3a/guidata-3.13.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.3" + +[[packages.wheels]] +name = "joblib-1.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.1" + +[[packages.wheels]] +name = "jupyterlab-4.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/c3/acced767eecc11a70c65c45295db5396c4f0c1937874937d5a76d7b177b6/jupyterlab-4.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.13.0" + +[[packages.wheels]] +name = "keras-3.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/15/d2/c6734cbf15288d75722ed3eb9d8ebf9204e48379c08160fd40fcd58a0c8b/keras-3.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/83/c1/bdf8b626a58e9495b10cb6b8f5f087219df1e9b4a872139ea3f11d1a5a61/librt-0.6.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/a8/e61a8c2b3cc7a597073d9cde1fcbb567e9d827f1db30c93cf80422eac70d/llvmlite-0.46.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/b0/c33921e73aaa0106224e5a34822411bea38046188eb781637f5a5b07e269/mypy-1.19.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.13.0" + +[[packages.wheels]] +name = "narwhals-2.13.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/0d/1861d1599571974b15b025e12b142d8e6b42ad66c8a07a89cb0fc21f1e03/narwhals-2.13.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.1" + +[[packages.wheels]] +name = "notebook-7.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/86/ca516cb58ad2cb2064124d31cf0fd8b012fca64bebeb26da2d2ddf03fc79/notebook-7.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/5f/4d0c9e756732577a52211f31da13a3d943d185f7fb90723f56d79c696caa/numba-0.63.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/0a86195ee7a1a96c088aefc8504385e881cf56f4563ed81bafe21cbf1fb0/ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.3" + +[[packages.wheels]] +name = "prince-0.16.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/86/8dd61a7715d39fe1051af1df350f99222935e17a7c7400a361dc54bd98b0/prince-0.16.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.1" + +[[packages.wheels]] +name = "pybind11-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cd/8a/37362fc2b949d5f733a8b0f2ff51ba423914cabefe69f1d1b6aab710f5fe/pybind11-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "4.0.4" + +[[packages.wheels]] +name = "pylint-4.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/92/d40f5d937517cc489ad848fc4414ecccc7592e4686b9071e09e64f5e378e/pylint-4.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/13/bc/e4522f429c45a3b6ad28185849dd76e5c8718b780883c4795e7ee41841ae/pyogrio-0.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.14.0" + +[[packages.wheels]] +name = "python_lsp_server-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/cf/587f913335e3855e0ddca2aee7c3f9d5de2d75a1e23434891e9f74783bcd/python_lsp_server-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/18/a8def8f91b18cd1ba6e05dbe02540168cb24d47e8dcf69e8d00b7da42a08/scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/76/3733c2bf1c2022d6bad92ed2a0146e2129ef992afa87708d20b1b36c5a1d/scs-3.2.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.7.0" + +[[packages.wheels]] +name = "skrub-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/80/b2/6032bf79d0acdf57fbd4885ab33789fd21c6003487e91994626a1b106fba/skrub-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.2" + +[[packages.wheels]] +name = "spyder-6.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/01/43495f870890438a378d30bb57478be3f26a5f1d02f396eb52d08f83ed3e/spyder-6.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.5.0" + +[[packages.wheels]] +name = "sspilib-0.5.0-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/17/6a/a11abf90172ff580ac2f9ade3496d868e05e851c4ecf487dd5baeb966b1d/sspilib-0.5.0-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/33/f1652d0c59fa51de18492ee2345b65372550501ad061daa38f950be390b6/statsmodels-0.14.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.4" + +[[packages.wheels]] +name = "tornado-6.5.4-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.20.1" + +[[packages.wheels]] +name = "typer-0.20.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/52/1f2df7e7d1be3d65ddc2936d820d4a3d9777a54f4204f5ca46b8513eff77/typer-0.20.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.15" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366" + +[[packages]] +name = "wordcloud" +version = "1.9.5" + +[[packages.wheels]] +name = "wordcloud-1.9.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6b/4e/938315f85438df0e225cb613d783301585bf1adf8d5fe869dca18b029e71/wordcloud-1.9.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cda8de69df5fac5a90aea3646993b03b4a920d8aa6454b6f6e58c341397b9ca6" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/02/5d/a19552fbc6ad4cb54ff953c3908bbc095f4a921bc569433d791f755186f1/xxhash-3.6.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4_wheels.toml b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4_wheels.toml new file mode 100644 index 00000000..7c183f3e --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_14_2_0whlb4_wheels.toml @@ -0,0 +1,5326 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "absl-py" +version = "2.3.0" + +[[packages.wheels]] +name = "absl_py-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/04/9d75e1d3bb4ab8ec67ff10919476ccdee06c098bcfcf3a352da5f985171d/absl_py-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3" + +[[packages]] +name = "adbc-driver-manager" +version = "1.9.0" + +[[packages.wheels]] +name = "adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/55/16/6e5895b661028a94ca0c96e174e3531c9e703afbcae3fd0260956094bfa9/adbc_driver_manager-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac" + +[[packages]] +name = "aiofiles" +version = "24.1.0" + +[[packages.wheels]] +name = "aiofiles-24.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5" + +[[packages]] +name = "aiohappyeyeballs" +version = "2.6.1" + +[[packages.wheels]] +name = "aiohappyeyeballs-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8" + +[[packages]] +name = "aiohttp" +version = "3.13.1" + +[[packages.wheels]] +name = "aiohttp-3.13.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/88/aa/25fd764384dc4eab714023112d3548a8dd69a058840d61d816ea736097a2/aiohttp-3.13.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c" + +[[packages]] +name = "aiosignal" +version = "1.4.0" + +[[packages.wheels]] +name = "aiosignal-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e" + +[[packages]] +name = "aiosqlite" +version = "0.21.0" + +[[packages.wheels]] +name = "aiosqlite-0.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/10/6c25ed6de94c49f88a91fa5018cb4c0f3625f31d5be9f771ebe5cc7cd506/aiosqlite-0.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0" + +[[packages]] +name = "alabaster" +version = "1.0.0" + +[[packages.wheels]] +name = "alabaster-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/b3/6b4067be973ae96ba0d615946e314c5ae35f9f993eca561b356540bb0c2b/alabaster-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b" + +[[packages]] +name = "alembic" +version = "1.17.2" + +[[packages.wheels]] +name = "alembic-1.17.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/88/6237e97e3385b57b5f1528647addea5cc03d4d65d5979ab24327d41fb00d/alembic-1.17.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6" + +[[packages]] +name = "altair" +version = "5.5.0" + +[[packages.wheels]] +name = "altair-5.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/aa/f3/0b6ced594e51cc95d8c1fc1640d3623770d01e4969d29c0bd09945fafefa/altair-5.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c" + +[[packages]] +name = "annotated-doc" +version = "0.0.3" + +[[packages.wheels]] +name = "annotated_doc-0.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580" + +[[packages]] +name = "annotated-types" +version = "0.7.0" + +[[packages.wheels]] +name = "annotated_types-0.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53" + +[[packages]] +name = "ansicolors" +version = "1.1.8" + +[[packages.wheels]] +name = "ansicolors-1.1.8-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/18/a56e2fe47b259bb52201093a3a9d4a32014f9d85071ad07e9d60600890ca/ansicolors-1.1.8-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187" + +[[packages]] +name = "anthropic" +version = "0.75.0" + +[[packages.wheels]] +name = "anthropic-0.75.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/1c/1cd02b7ae64302a6e06724bf80a96401d5313708651d277b1458504a1730/anthropic-0.75.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b" + +[[packages]] +name = "anyio" +version = "4.12.0" + +[[packages.wheels]] +name = "anyio-4.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/9c/36c5c37947ebfb8c7f22e0eb6e4d188ee2d53aa3880f3f2744fb894f0cb1/anyio-4.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb" + +[[packages]] +name = "anywidget" +version = "0.9.21" + +[[packages.wheels]] +name = "anywidget-0.9.21-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/03/c17464bbf682ea87e7e3de2ddc63395e359a78ae9c01f55fc78759ecbd79/anywidget-0.9.21-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761" + +[[packages]] +name = "argcomplete" +version = "3.6.3" + +[[packages.wheels]] +name = "argcomplete-3.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/f5/9373290775639cb67a2fce7f629a1c240dce9f12fe927bc32b2736e16dfc/argcomplete-3.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce" + +[[packages]] +name = "argon2-cffi" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi-25.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741" + +[[packages]] +name = "argon2-cffi-bindings" +version = "25.1.0" + +[[packages.wheels]] +name = "argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98" + +[[packages]] +name = "array-api-compat" +version = "1.12.0" + +[[packages.wheels]] +name = "array_api_compat-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/b1/0542e0cab6f49f151a2d7a42400f84f706fc0b64e85dc1f56708b2e9fd37/array_api_compat-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b" + +[[packages]] +name = "arrow" +version = "1.3.0" + +[[packages.wheels]] +name = "arrow-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80" + +[[packages]] +name = "asgi-csrf" +version = "0.11" + +[[packages.wheels]] +name = "asgi_csrf-0.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/1c/5d954baaf144852a4762368b37c06202b277378ea412acc5565f69acc9e9/asgi_csrf-0.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b" + +[[packages]] +name = "asgiref" +version = "3.8.1" + +[[packages.wheels]] +name = "asgiref-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47" + +[[packages]] +name = "asn1crypto" +version = "1.5.1" + +[[packages.wheels]] +name = "asn1crypto-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67" + +[[packages]] +name = "asteval" +version = "1.0.5" + +[[packages.wheels]] +name = "asteval-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/0d/2c6aaab67ac566d76322e87827d707214c5f6ffb5a4fcd456a8633da1788/asteval-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa" + +[[packages]] +name = "astroid" +version = "3.3.9" + +[[packages.wheels]] +name = "astroid-3.3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248" + +[[packages]] +name = "astropy" +version = "7.1.1" + +[[packages.wheels]] +name = "astropy-7.1.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/6d/a7/e35633fadb45b21b651a29ed77e7c9531b782e90bc519494a448a82698d7/astropy-7.1.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9" + +[[packages]] +name = "astropy-iers-data" +version = "0.2025.9.29.0.35.48" + +[[packages.wheels]] +name = "astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/19/3a/1fd856a497a4add1b9b782061b5a804ed35a66e395a43a08f877eb32b193/astropy_iers_data-0.2025.9.29.0.35.48-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159" + +[[packages]] +name = "asttokens" +version = "3.0.0" + +[[packages.wheels]] +name = "asttokens-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2" + +[[packages]] +name = "async-lru" +version = "2.0.5" + +[[packages.wheels]] +name = "async_lru-2.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943" + +[[packages]] +name = "asyncssh" +version = "2.21.0" + +[[packages.wheels]] +name = "asyncssh-2.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/99/56/db25216aa7f385ec71fdc489af80812171515cddbe68c0e515e98a291390/asyncssh-2.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b" + +[[packages]] +name = "atomicwrites" +version = "1.4.0" + +[[packages.wheels]] +name = "atomicwrites-1.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197" + +[[packages]] +name = "attrs" +version = "25.4.0" + +[[packages.wheels]] +name = "attrs-25.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373" + +[[packages]] +name = "autopep8" +version = "2.0.4" + +[[packages.wheels]] +name = "autopep8-2.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d8/f2/e63c9f9c485cd90df8e4e7ae90fa3be2469c9641888558c7b45fa98a76f8/autopep8-2.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb" + +[[packages]] +name = "azure-core" +version = "1.36.0" + +[[packages.wheels]] +name = "azure_core-1.36.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/3c/b90d5afc2e47c4a45f4bba00f9c3193b0417fad5ad3bb07869f9d12832aa/azure_core-1.36.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b" + +[[packages]] +name = "azure-cosmos" +version = "4.14.2" + +[[packages.wheels]] +name = "azure_cosmos-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/f3/d7c938771c8dc1ad7ae44370694ebacb06d9b37f70be846033395af2c56b/azure_cosmos-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c" + +[[packages]] +name = "azure-identity" +version = "1.25.1" + +[[packages.wheels]] +name = "azure_identity-1.25.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/7b/5652771e24fff12da9dde4c20ecf4682e606b104f26419d139758cc935a6/azure_identity-1.25.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651" + +[[packages]] +name = "babel" +version = "2.17.0" + +[[packages.wheels]] +name = "babel-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2" + +[[packages]] +name = "baresql" +version = "1.0.0" + +[[packages.wheels]] +name = "baresql-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/d2/fe24bcd99d97bddbbccdf191edf4e84c0fdfe894dfff9f54b05f36096ebb/baresql-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01" + +[[packages]] +name = "bcrypt" +version = "5.0.0" + +[[packages.wheels]] +name = "bcrypt-5.0.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2" + +[[packages]] +name = "beautifulsoup4" +version = "4.14.2" + +[[packages.wheels]] +name = "beautifulsoup4-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/fe/3aed5d0be4d404d12d36ab97e2f1791424d9ca39c2f754a6285d59a3b01d/beautifulsoup4-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515" + +[[packages]] +name = "binaryornot" +version = "0.4.4" + +[[packages.wheels]] +name = "binaryornot-0.4.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/24/7e/f7b6f453e6481d1e233540262ccbfcf89adcd43606f44a028d7f5fae5eb2/binaryornot-0.4.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4" + +[[packages]] +name = "black" +version = "25.11.0" + +[[packages.wheels]] +name = "black-25.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ff/4b/5604710d61cdff613584028b4cb4607e56e148801ed9b38ee7970799dab6/black-25.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664" + +[[packages]] +name = "bleach" +version = "6.2.0" + +[[packages.wheels]] +name = "bleach-6.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e" + +[[packages]] +name = "blinker" +version = "1.9.0" + +[[packages.wheels]] +name = "blinker-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + +[[packages]] +name = "bokeh" +version = "3.8.1" + +[[packages.wheels]] +name = "bokeh-3.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/e7/b18bee0772d49c0f78d57f15a68e85257abf7224d9b910706abe8bd1dc0f/bokeh-3.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00" + +[[packages]] +name = "branca" +version = "0.8.1" + +[[packages.wheels]] +name = "branca-0.8.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f8/9d/91cddd38bd00170aad1a4b198c47b4ed716be45c234e09b835af41f4e717/branca-0.8.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425" + +[[packages]] +name = "brotli" +version = "1.2.0" + +[[packages.wheels]] +name = "brotli-1.2.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/f5/10/56978295c14794b2c12007b07f3e41ba26acda9257457d7085b0bb3bb90c/brotli-1.2.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "cachetools" +version = "5.5.2" + +[[packages.wheels]] +name = "cachetools-5.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a" + +[[packages]] +name = "cattrs" +version = "1.2.0" + +[[packages.wheels]] +name = "cattrs-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/d0/c3c223a190aea4cc58589e69b4c287c7de6e741d7b3be432e47e3a0d2ecc/cattrs-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444" + +[[packages]] +name = "certifi" +version = "2025.11.12" + +[[packages.wheels]] +name = "certifi-2025.11.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b" + +[[packages]] +name = "cffi" +version = "2.0.0" + +[[packages.wheels]] +name = "cffi-2.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25" + +[[packages]] +name = "chardet" +version = "5.2.0" + +[[packages.wheels]] +name = "chardet-5.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970" + +[[packages]] +name = "charset-normalizer" +version = "3.4.3" + +[[packages.wheels]] +name = "charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c" + +[[packages]] +name = "clarabel" +version = "0.11.1" + +[[packages.wheels]] +name = "clarabel-0.11.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/41/e6/4eee3062088c221e5a18b054e51c69f616e0bb0dc1b0a1a5e0fe90dfa18e/clarabel-0.11.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148" + +[[packages]] +name = "click" +version = "8.3.0" + +[[packages.wheels]] +name = "click-8.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/d3/9dcc0f5797f070ec8edf30fbadfb200e71d9db6b84d211e3b2085a7589a0/click-8.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc" + +[[packages]] +name = "click-default-group" +version = "1.2.4" + +[[packages.wheels]] +name = "click_default_group-1.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f" + +[[packages]] +name = "cloudpickle" +version = "3.1.2" + +[[packages.wheels]] +name = "cloudpickle-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a" + +[[packages]] +name = "cohere" +version = "5.20.0" + +[[packages.wheels]] +name = "cohere-5.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/5c/e312678fb4dff827c748980ec18918307d25e39ce006c84f7c6b32bc5641/cohere-5.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "colorlog" +version = "6.9.0" + +[[packages.wheels]] +name = "colorlog-6.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/51/9b208e85196941db2f0654ad0357ca6388ab3ed67efdbfc799f35d1f83aa/colorlog-6.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff" + +[[packages]] +name = "comm" +version = "0.2.3" + +[[packages.wheels]] +name = "comm-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417" + +[[packages]] +name = "contourpy" +version = "1.3.3" + +[[packages.wheels]] +name = "contourpy-1.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd" + +[[packages]] +name = "cookiecutter" +version = "2.6.0" + +[[packages.wheels]] +name = "cookiecutter-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b6/d9/0137658a353168ffa9d0fc14b812d3834772040858ddd1cb6eeaf09f7a44/cookiecutter-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d" + +[[packages]] +name = "cryptography" +version = "46.0.3" + +[[packages.wheels]] +name = "cryptography-46.0.3-cp311-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb" + +[[packages]] +name = "cycler" +version = "0.12.1" + +[[packages.wheels]] +name = "cycler-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30" + +[[packages]] +name = "cython" +version = "3.2.3" + +[[packages.wheels]] +name = "cython-3.2.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/73/14/0871a0b407fa50257a79c57a608903ed50032c7619d9531451f7090a5ee3/cython-3.2.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8" + +[[packages]] +name = "cytoolz" +version = "1.1.0" + +[[packages.wheels]] +name = "cytoolz-1.1.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/20/1f3a733d710d2a25d6f10b463bef55ada52fe6392a5d233c8d770191f48a/cytoolz-1.1.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec" + +[[packages]] +name = "datasette" +version = "0.65.2" + +[[packages.wheels]] +name = "datasette-0.65.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/3a/ffa1259fc018f3bb0e6e8444982909a449478ede805def5593319ff3f732/datasette-0.65.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f" + +[[packages]] +name = "datasette-graphql" +version = "2.2" + +[[packages.wheels]] +name = "datasette_graphql-2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/12/e8fb59d77c59ec47a2aa53a6d4ac57ad55fce2b48c8397c2866c3f2c66cd/datasette_graphql-2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485" + +[[packages]] +name = "debugpy" +version = "1.8.17" + +[[packages.wheels]] +name = "debugpy-1.8.17-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef" + +[[packages]] +name = "decorator" +version = "5.2.1" + +[[packages.wheels]] +name = "decorator-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a" + +[[packages]] +name = "defusedxml" +version = "0.7.1" + +[[packages.wheels]] +name = "defusedxml-0.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61" + +[[packages]] +name = "deprecated" +version = "1.3.1" + +[[packages.wheels]] +name = "deprecated-1.3.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/d0/205d54408c08b13550c733c4b85429e7ead111c7f0014309637425520a9a/deprecated-1.3.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f" + +[[packages]] +name = "diff-match-patch" +version = "20241021" + +[[packages.wheels]] +name = "diff_match_patch-20241021-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f7/bb/2aa9b46a01197398b901e458974c20ed107935c26e44e37ad5b0e5511e44/diff_match_patch-20241021-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782" + +[[packages]] +name = "dill" +version = "0.4.0" + +[[packages.wheels]] +name = "dill-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049" + +[[packages]] +name = "distro" +version = "1.9.0" + +[[packages.wheels]] +name = "distro-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2" + +[[packages]] +name = "django" +version = "5.2.8" + +[[packages.wheels]] +name = "django-5.2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f" + +[[packages]] +name = "dnspython" +version = "2.7.0" + +[[packages.wheels]] +name = "dnspython-2.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86" + +[[packages]] +name = "docstring-parser" +version = "0.17.0" + +[[packages.wheels]] +name = "docstring_parser-0.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708" + +[[packages]] +name = "docstring-to-markdown" +version = "0.17" + +[[packages.wheels]] +name = "docstring_to_markdown-0.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/7b/af3d0da15bed3a8665419bb3a630585756920f4ad67abfdfef26240ebcc0/docstring_to_markdown-0.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c" + +[[packages]] +name = "docutils" +version = "0.21.2" + +[[packages.wheels]] +name = "docutils-0.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2" + +[[packages]] +name = "duckdb" +version = "1.4.3" + +[[packages.wheels]] +name = "duckdb-1.4.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/94/41/abec537cc7c519121a2a83b9a6f180af8915fabb433777dc147744513e74/duckdb-1.4.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765" + +[[packages]] +name = "entrypoints" +version = "0.4" + +[[packages.wheels]] +name = "entrypoints-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/a8/365059bbcd4572cbc41de17fd5b682be5868b218c3c5479071865cab9078/entrypoints-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f" + +[[packages]] +name = "et-xmlfile" +version = "2.0.0" + +[[packages.wheels]] +name = "et_xmlfile-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa" + +[[packages]] +name = "eval-type-backport" +version = "0.2.2" + +[[packages.wheels]] +name = "eval_type_backport-0.2.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ce/31/55cd413eaccd39125368be33c46de24a1f639f2e12349b0361b4678f3915/eval_type_backport-0.2.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a" + +[[packages]] +name = "executing" +version = "2.2.1" + +[[packages.wheels]] +name = "executing-2.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017" + +[[packages]] +name = "faker" +version = "38.2.0" + +[[packages.wheels]] +name = "faker-38.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/93/00c94d45f55c336434a15f98d906387e87ce28f9918e4444829a8fda432d/faker-38.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65" + +[[packages]] +name = "fasta2a" +version = "0.6.0" + +[[packages.wheels]] +name = "fasta2a-0.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/14/64899f718727770099f53e8698529fc83ec2a3a4d311270dfb9f6e2bec06/fasta2a-0.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c" + +[[packages]] +name = "fastapi" +version = "0.123.9" + +[[packages.wheels]] +name = "fastapi-0.123.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/15/a785e992a27620e022d0bc61b6c897ec14cff07c5ab7ff9f27651a21570b/fastapi-0.123.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920" + +[[packages]] +name = "fastavro" +version = "1.12.1" + +[[packages.wheels]] +name = "fastavro-1.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/9d/a9/1672910f458ecb30b596c9e59e41b7c00309b602a0494341451e92e62747/fastavro-1.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004" + +[[packages]] +name = "fastjsonschema" +version = "2.21.2" + +[[packages.wheels]] +name = "fastjsonschema-2.21.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463" + +[[packages]] +name = "filelock" +version = "3.20.0" + +[[packages.wheels]] +name = "filelock-3.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2" + +[[packages]] +name = "flake8" +version = "7.1.1" + +[[packages.wheels]] +name = "flake8-7.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/42/65004373ac4617464f35ed15931b30d764f53cdd30cc78d5aea349c8c050/flake8-7.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213" + +[[packages]] +name = "flask" +version = "3.1.2" + +[[packages.wheels]] +name = "flask-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ec/f9/7f9263c5695f4bd0023734af91bedb2ff8209e8de6ead162f35d8dc762fd/flask-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c" + +[[packages]] +name = "flexcache" +version = "0.3" + +[[packages.wheels]] +name = "flexcache-0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/cd/c883e1a7c447479d6e13985565080e3fea88ab5a107c21684c813dba1875/flexcache-0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32" + +[[packages]] +name = "flexparser" +version = "0.4" + +[[packages.wheels]] +name = "flexparser-0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/5e/3be305568fe5f34448807976dc82fc151d76c3e0e03958f34770286278c1/flexparser-0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846" + +[[packages]] +name = "flit" +version = "3.12.0" + +[[packages.wheels]] +name = "flit-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f5/82/ce1d3bb380b227e26e517655d1de7b32a72aad61fa21ff9bd91a2e2db6ee/flit-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431" + +[[packages]] +name = "flit-core" +version = "3.12.0" + +[[packages.wheels]] +name = "flit_core-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f2/65/b6ba90634c984a4fcc02c7e3afe523fef500c4980fec67cc27536ee50acf/flit_core-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c" + +[[packages]] +name = "folium" +version = "0.20.0" + +[[packages.wheels]] +name = "folium-0.20.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b5/a8/5f764f333204db0390362a4356d03a43626997f26818a0e9396f1b3bd8c9/folium-0.20.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf" + +[[packages]] +name = "fonttools" +version = "4.61.0" + +[[packages.wheels]] +name = "fonttools-4.61.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/20/ee/f434fe7749360497c52b7dcbcfdbccdaab0a71c59f19d572576066717122/fonttools-4.61.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9" + +[[packages]] +name = "fqdn" +version = "1.5.1" + +[[packages.wheels]] +name = "fqdn-1.5.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014" + +[[packages]] +name = "frozenlist" +version = "1.8.0" + +[[packages.wheels]] +name = "frozenlist-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0" + +[[packages]] +name = "fsspec" +version = "2025.9.0" + +[[packages.wheels]] +name = "fsspec-2025.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/71/70db47e4f6ce3e5c37a607355f80da8860a33226be640226ac52cb05ef2e/fsspec-2025.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7" + +[[packages]] +name = "fuzzywuzzy" +version = "0.18.0" + +[[packages.wheels]] +name = "fuzzywuzzy-0.18.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/ff/74f23998ad2f93b945c0309f825be92e04e0348e062026998b5eefef4c33/fuzzywuzzy-0.18.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993" + +[[packages]] +name = "genai-prices" +version = "0.0.38" + +[[packages.wheels]] +name = "genai_prices-0.0.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/ae/93b67a2404482e75791278b60fe84a222da4116af080a49db5ec336e5495/genai_prices-0.0.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f" + +[[packages]] +name = "geographiclib" +version = "2.1" + +[[packages.wheels]] +name = "geographiclib-2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/b3/802576f2ea5dcb48501bb162e4c7b7b3ca5654a42b2c968ef98a797a4c79/geographiclib-2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b" + +[[packages]] +name = "geopandas" +version = "1.1.1" + +[[packages.wheels]] +name = "geopandas-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/70/d5cd0696eff08e62fdbdebe5b46527facb4e7220eabe0ac6225efab50168/geopandas-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8" + +[[packages]] +name = "geopy" +version = "2.4.1" + +[[packages.wheels]] +name = "geopy-2.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7" + +[[packages]] +name = "google-auth" +version = "2.43.0" + +[[packages.wheels]] +name = "google_auth-2.43.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6f/d1/385110a9ae86d91cc14c5282c61fe9f4dc41c0b9f7d423c6ad77038c4448/google_auth-2.43.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16" + +[[packages]] +name = "google-genai" +version = "1.55.0" + +[[packages.wheels]] +name = "google_genai-1.55.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3e/86/a5a8e32b2d40b30b5fb20e7b8113fafd1e38befa4d1801abd5ce6991065a/google_genai-1.55.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1" + +[[packages]] +name = "graphene" +version = "3.4.3" + +[[packages.wheels]] +name = "graphene-3.4.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/66/e0/61d8e98007182e6b2aca7cf65904721fb2e4bce0192272ab9cb6f69d8812/graphene-3.4.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71" + +[[packages]] +name = "graphql-core" +version = "3.2.6" + +[[packages.wheels]] +name = "graphql_core-3.2.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f" + +[[packages]] +name = "graphql-relay" +version = "3.2.0" + +[[packages.wheels]] +name = "graphql_relay-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/74/16/a4cf06adbc711bd364a73ce043b0b08d8fa5aae3df11b6ee4248bcdad2e0/graphql_relay-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5" + +[[packages]] +name = "greenlet" +version = "3.2.4" + +[[packages.wheels]] +name = "greenlet-3.2.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/a5/6ddab2b4c112be95601c13428db1d8b6608a8b6039816f2ba09c346c08fc/greenlet-3.2.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01" + +[[packages]] +name = "griffe" +version = "1.14.0" + +[[packages.wheels]] +name = "griffe-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b1/9ff6578d789a89812ff21e4e0f80ffae20a65d5dd84e7a17873fe3b365be/griffe-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0" + +[[packages]] +name = "groq" +version = "0.37.1" + +[[packages.wheels]] +name = "groq-0.37.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5f/d6/645a081750e43f858b7d09dce5d8e1e76cf11e7e4bdba81252e04f78963d/groq-0.37.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da" + +[[packages]] +name = "guidata" +version = "3.13.3" + +[[packages.wheels]] +name = "guidata-3.13.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/6f/0572785acd9266fc3adb3245cec5e9d807adc7b0c612cb096bacd4b6eeac/guidata-3.13.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb" + +[[packages]] +name = "h11" +version = "0.16.0" + +[[packages.wheels]] +name = "h11-0.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" + +[[packages]] +name = "h2" +version = "4.2.0" + +[[packages.wheels]] +name = "h2-4.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0" + +[[packages]] +name = "h5py" +version = "3.15.1" + +[[packages.wheels]] +name = "h5py-3.15.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734" + +[[packages]] +name = "hatchling" +version = "1.28.0" + +[[packages.wheels]] +name = "hatchling-1.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0d/a5/48cb7efb8b4718b1a4c0c331e3364a3a33f614ff0d6afd2b93ee883d3c47/hatchling-1.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961" + +[[packages]] +name = "hf-xet" +version = "1.2.0" + +[[packages.wheels]] +name = "hf_xet-1.2.0-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69" + +[[packages]] +name = "hpack" +version = "4.1.0" + +[[packages.wheels]] +name = "hpack-4.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496" + +[[packages]] +name = "html5lib" +version = "1.1" + +[[packages.wheels]] +name = "html5lib-1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d" + +[[packages]] +name = "httpcore" +version = "1.0.9" + +[[packages.wheels]] +name = "httpcore-1.0.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" + +[[packages]] +name = "httpie" +version = "3.2.4" + +[[packages.wheels]] +name = "httpie-3.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/b6/39bcf01e1185882f34bc9fb77d1fb4a27911a55f60ab407de34abc8a2347/httpie-3.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b" + +[[packages]] +name = "httpx" +version = "0.28.1" + +[[packages.wheels]] +name = "httpx-0.28.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" + +[[packages]] +name = "httpx-sse" +version = "0.4.0" + +[[packages.wheels]] +name = "httpx_sse-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/9b/a181f281f65d776426002f330c31849b86b31fc9d848db62e16f03ff739f/httpx_sse-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f" + +[[packages]] +name = "huggingface-hub" +version = "1.2.3" + +[[packages.wheels]] +name = "huggingface_hub-1.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/8d/7ca723a884d55751b70479b8710f06a317296b1fa1c1dec01d0420d13e43/huggingface_hub-1.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642" + +[[packages]] +name = "hupper" +version = "1.12.1" + +[[packages.wheels]] +name = "hupper-1.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/7d/3888833e4f5ea56af4a9935066ec09a83228e533d7b8877f65889d706ee4/hupper-1.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19" + +[[packages]] +name = "hypercorn" +version = "0.17.3" + +[[packages.wheels]] +name = "hypercorn-0.17.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/3b/dfa13a8d96aa24e40ea74a975a9906cfdc2ab2f4e3b498862a57052f04eb/hypercorn-0.17.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547" + +[[packages]] +name = "hyperframe" +version = "6.1.0" + +[[packages.wheels]] +name = "hyperframe-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5" + +[[packages]] +name = "hypothesis" +version = "6.148.7" + +[[packages.wheels]] +name = "hypothesis-6.148.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/55/fa5607e4a4af96dfa0e7efd81bbd130735cedd21aac70b25e06191bff92f/hypothesis-6.148.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee" + +[[packages]] +name = "id" +version = "1.5.0" + +[[packages.wheels]] +name = "id-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/cb/18326d2d89ad3b0dd143da971e77afd1e6ca6674f1b1c3df4b6bec6279fc/id-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658" + +[[packages]] +name = "idna" +version = "3.11" + +[[packages.wheels]] +name = "idna-3.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea" + +[[packages]] +name = "imageio" +version = "2.37.0" + +[[packages.wheels]] +name = "imageio-2.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed" + +[[packages]] +name = "imagesize" +version = "1.4.1" + +[[packages.wheels]] +name = "imagesize-1.4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/62/85c4c919272577931d407be5ba5d71c20f0b616d31a0befe0ae45bb79abd/imagesize-1.4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b" + +[[packages]] +name = "imbalanced-learn" +version = "0.14.0" + +[[packages.wheels]] +name = "imbalanced_learn-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/65/60/103dc71019ec2fa987f42f9dbe88641a74edc57f8499fac8896955b66065/imbalanced_learn-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60" + +[[packages]] +name = "importlib-metadata" +version = "8.7.0" + +[[packages.wheels]] +name = "importlib_metadata-8.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd" + +[[packages]] +name = "inflection" +version = "0.5.1" + +[[packages.wheels]] +name = "inflection-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/59/91/aa6bde563e0085a02a435aa99b49ef75b0a4b062635e606dab23ce18d720/inflection-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" + +[[packages]] +name = "iniconfig" +version = "2.1.0" + +[[packages.wheels]] +name = "iniconfig-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760" + +[[packages]] +name = "intervaltree" +version = "3.1.0" + +[packages.sdist] +name = "intervaltree-3.1.0.tar.gz" +url = "https://files.pythonhosted.org/packages/50/fb/396d568039d21344639db96d940d40eb62befe704ef849b27949ded5c3bb/intervaltree-3.1.0.tar.gz" + +[packages.sdist.hashes] +sha256 = "902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d" + +[[packages]] +name = "invoke" +version = "2.2.1" + +[[packages.wheels]] +name = "invoke-2.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8" + +[[packages]] +name = "ipycanvas" +version = "0.14.3" + +[[packages.wheels]] +name = "ipycanvas-0.14.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/37/c6880bd16093793dcb4c005011cf968f45fd815b7b5094fa8374524add26/ipycanvas-0.14.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e" + +[[packages]] +name = "ipykernel" +version = "6.31.0" + +[[packages.wheels]] +name = "ipykernel-6.31.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/d8/502954a4ec0efcf264f99b65b41c3c54e65a647d9f0d6f62cd02227d242c/ipykernel-6.31.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af" + +[[packages]] +name = "ipyleaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "ipyleaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/49/69/e9858f2c0b99bf9f036348d1c84b8026f438bb6875effe6a9bcd9883dada/ipyleaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173" + +[[packages]] +name = "ipympl" +version = "0.9.8" + +[[packages.wheels]] +name = "ipympl-0.9.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/6e/9148bfed8ca535e4c61ce7843327c76ec7c63c40e33848ec03aa844a26af/ipympl-0.9.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be" + +[[packages]] +name = "ipython" +version = "9.8.0" + +[[packages.wheels]] +name = "ipython-9.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/df/8ee1c5dd1e3308b5d5b2f2dfea323bb2f3827da8d654abb6642051199049/ipython-9.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385" + +[[packages]] +name = "ipython-genutils" +version = "0.2.0" + +[[packages.wheels]] +name = "ipython_genutils-0.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/bc/9bd3b5c2b4774d5f33b2d544f1460be9df7df2fe42f352135381c347c69a/ipython_genutils-0.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8" + +[[packages]] +name = "ipython-pygments-lexers" +version = "1.1.1" + +[[packages.wheels]] +name = "ipython_pygments_lexers-1.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c" + +[[packages]] +name = "ipython-sql" +version = "0.5.0" + +[[packages.wheels]] +name = "ipython_sql-0.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/30/8f/9e50fa53ffc371483f9d1b90c1175b706d28a2e978e90a8894035af01905/ipython_sql-0.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b" + +[[packages]] +name = "ipywidgets" +version = "8.1.8" + +[[packages.wheels]] +name = "ipywidgets-8.1.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e" + +[[packages]] +name = "isoduration" +version = "20.11.0" + +[[packages.wheels]] +name = "isoduration-20.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042" + +[[packages]] +name = "isort" +version = "6.0.1" + +[[packages.wheels]] +name = "isort-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615" + +[[packages]] +name = "itsdangerous" +version = "2.2.0" + +[[packages.wheels]] +name = "itsdangerous-2.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/96/92447566d16df59b2a776c0fb82dbc4d9e07cd95062562af01e408583fc4/itsdangerous-2.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef" + +[[packages]] +name = "janus" +version = "2.0.0" + +[[packages.wheels]] +name = "janus-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/34/65604740edcb20e1bda6a890348ed7d282e7dd23aa00401cbe36fd0edbd9/janus-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9" + +[[packages]] +name = "jaraco-classes" +version = "3.4.0" + +[[packages.wheels]] +name = "jaraco.classes-3.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790" + +[[packages]] +name = "jaraco-context" +version = "6.0.1" + +[[packages.wheels]] +name = "jaraco.context-6.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/db/0c52c4cf5e4bd9f5d7135ec7669a3a767af21b3a308e1ed3674881e52b62/jaraco.context-6.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4" + +[[packages]] +name = "jaraco-functools" +version = "4.3.0" + +[[packages.wheels]] +name = "jaraco_functools-4.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b4/09/726f168acad366b11e420df31bf1c702a54d373a83f968d94141a8c3fde0/jaraco_functools-4.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8" + +[[packages]] +name = "jedi" +version = "0.19.2" + +[[packages.wheels]] +name = "jedi-0.19.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9" + +[[packages]] +name = "jellyfish" +version = "1.2.1" + +[[packages.wheels]] +name = "jellyfish-1.2.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/bc/e2/fa5de38380b0f5bd531b27a78acb0dc6118dab0b21f56d36008b829aa7de/jellyfish-1.2.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd" + +[[packages]] +name = "jinja2" +version = "3.1.6" + +[[packages.wheels]] +name = "jinja2-3.1.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" + +[[packages]] +name = "jiter" +version = "0.11.1" + +[[packages.wheels]] +name = "jiter-0.11.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c" + +[[packages]] +name = "joblib" +version = "1.5.2" + +[[packages.wheels]] +name = "joblib-1.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/e8/685f47e0d754320684db4425a0967f7d3fa70126bffd76110b7009a0090f/joblib-1.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241" + +[[packages]] +name = "json5" +version = "0.12.1" + +[[packages.wheels]] +name = "json5-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5" + +[[packages]] +name = "jsonpatch" +version = "1.33" + +[[packages.wheels]] +name = "jsonpatch-1.33-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade" + +[[packages]] +name = "jsonpointer" +version = "3.0.0" + +[[packages.wheels]] +name = "jsonpointer-3.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942" + +[[packages]] +name = "jsonschema" +version = "4.24.0" + +[[packages.wheels]] +name = "jsonschema-4.24.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d" + +[[packages]] +name = "jsonschema-specifications" +version = "2025.9.1" + +[[packages.wheels]] +name = "jsonschema_specifications-2025.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe" + +[[packages]] +name = "julia" +version = "0.6.2" + +[[packages.wheels]] +name = "julia-0.6.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/af/2e9a1a996f32b34249582392bb419cf8983b627a1d31412acbe9d6dea5b0/julia-0.6.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1" + +[[packages]] +name = "jupyter" +version = "1.1.1" + +[[packages.wheels]] +name = "jupyter-1.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83" + +[[packages]] +name = "jupyter-bokeh" +version = "4.0.5" + +[[packages.wheels]] +name = "jupyter_bokeh-4.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/47/78/33b2294aad62e5f95b89a89379c5995c2bd978018387ef8bec79f6dc272c/jupyter_bokeh-4.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c" + +[[packages]] +name = "jupyter-client" +version = "8.6.3" + +[[packages.wheels]] +name = "jupyter_client-8.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f" + +[[packages]] +name = "jupyter-console" +version = "6.6.3" + +[[packages.wheels]] +name = "jupyter_console-6.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485" + +[[packages]] +name = "jupyter-core" +version = "5.9.1" + +[[packages.wheels]] +name = "jupyter_core-5.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407" + +[[packages]] +name = "jupyter-events" +version = "0.12.0" + +[[packages.wheels]] +name = "jupyter_events-0.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb" + +[[packages]] +name = "jupyter-leaflet" +version = "0.20.0" + +[[packages.wheels]] +name = "jupyter_leaflet-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/95/ffe543060eb3b1570d78c3f2c1948c640a6758ff5c6479c27e474819115b/jupyter_leaflet-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764" + +[[packages]] +name = "jupyter-lsp" +version = "2.3.0" + +[[packages.wheels]] +name = "jupyter_lsp-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1a/60/1f6cee0c46263de1173894f0fafcb3475ded276c472c14d25e0280c18d6d/jupyter_lsp-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f" + +[[packages]] +name = "jupyter-server" +version = "2.17.0" + +[[packages.wheels]] +name = "jupyter_server-2.17.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f" + +[[packages]] +name = "jupyter-server-terminals" +version = "0.5.3" + +[[packages.wheels]] +name = "jupyter_server_terminals-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa" + +[[packages]] +name = "jupyterlab" +version = "4.5.0" + +[[packages.wheels]] +name = "jupyterlab-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/1e/5a4d5498eba382fee667ed797cf64ae5d1b13b04356df62f067f48bb0f61/jupyterlab-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a" + +[[packages]] +name = "jupyterlab-pygments" +version = "0.3.0" + +[[packages.wheels]] +name = "jupyterlab_pygments-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780" + +[[packages]] +name = "jupyterlab-server" +version = "2.28.0" + +[[packages.wheels]] +name = "jupyterlab_server-2.28.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968" + +[[packages]] +name = "jupyterlab-widgets" +version = "3.0.15" + +[[packages.wheels]] +name = "jupyterlab_widgets-3.0.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/6a/ca128561b22b60bd5a0c4ea26649e68c8556b82bc70a0c396eebc977fe86/jupyterlab_widgets-3.0.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c" + +[[packages]] +name = "keras" +version = "3.12.0" + +[[packages.wheels]] +name = "keras-3.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ba/61/cc8be27bd65082440754be443b17b6f7c185dec5e00dfdaeab4f8662e4a8/keras-3.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8" + +[[packages]] +name = "keyring" +version = "25.6.0" + +[[packages.wheels]] +name = "keyring-25.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d3/32/da7f44bcb1105d3e88a0b74ebdca50c59121d2ddf71c9e34ba47df7f3a56/keyring-25.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd" + +[[packages]] +name = "kiwisolver" +version = "1.4.9" + +[[packages.wheels]] +name = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7" + +[[packages]] +name = "langchain" +version = "1.1.3" + +[[packages.wheels]] +name = "langchain-1.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f3/39/ed3121ea3a0c60a0cda6ea5c4c1cece013e8bbc9b18344ff3ae507728f98/langchain-1.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731" + +[[packages]] +name = "langchain-core" +version = "1.2.0" + +[[packages.wheels]] +name = "langchain_core-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/bb/ddac30cba0c246f7c15d81851311a23dc1455b6e908f624e71fa3b82b3d1/langchain_core-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727" + +[[packages]] +name = "langgraph" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/1b/e318ee76e42d28f515d87356ac5bd7a7acc8bad3b8f54ee377bef62e1cbf/langgraph-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e" + +[[packages]] +name = "langgraph-checkpoint" +version = "3.0.0" + +[[packages.wheels]] +name = "langgraph_checkpoint-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/2a/2efe0b5a72c41e3a936c81c5f5d8693987a1b260287ff1bbebaae1b7b888/langgraph_checkpoint-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010" + +[[packages]] +name = "langgraph-prebuilt" +version = "1.0.5" + +[[packages.wheels]] +name = "langgraph_prebuilt-1.0.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/5e/aeba4a5b39fe6e874e0dd003a82da71c7153e671312671a8dacc5cb7c1af/langgraph_prebuilt-1.0.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496" + +[[packages]] +name = "langgraph-sdk" +version = "0.3.0" + +[[packages.wheels]] +name = "langgraph_sdk-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/48/ee4d7afb3c3d38bd2ebe51a4d37f1ed7f1058dd242f35994b562203067aa/langgraph_sdk-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f" + +[[packages]] +name = "langsmith" +version = "0.4.59" + +[[packages.wheels]] +name = "langsmith-0.4.59-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/63/54/4577ef9424debea2fa08af338489d593276520d2e2f8950575d292be612c/langsmith-0.4.59-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5" + +[[packages]] +name = "librt" +version = "0.6.2" + +[[packages.wheels]] +name = "librt-0.6.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/83/c1/bdf8b626a58e9495b10cb6b8f5f087219df1e9b4a872139ea3f11d1a5a61/librt-0.6.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b" + +[[packages]] +name = "llvmlite" +version = "0.46.0" + +[[packages.wheels]] +name = "llvmlite-0.46.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/30/a8/e61a8c2b3cc7a597073d9cde1fcbb567e9d827f1db30c93cf80422eac70d/llvmlite-0.46.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61" + +[[packages]] +name = "lmfit" +version = "1.3.3" + +[[packages.wheels]] +name = "lmfit-1.3.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/e1/d5aeb89530550c7e797d3528225fa31012490e79c9df5cf72a0f07cc66d3/lmfit-1.3.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2" + +[[packages]] +name = "locket" +version = "1.0.0" + +[[packages.wheels]] +name = "locket-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3" + +[[packages]] +name = "logfire-api" +version = "4.14.2" + +[[packages.wheels]] +name = "logfire_api-4.14.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/c7/b06a83df678fca882c24fb498e628e0406bdb95ffdfa7ae43ecc0a714d52/logfire_api-4.14.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713" + +[[packages]] +name = "lsprotocol" +version = "2023.0.1" + +[[packages.wheels]] +name = "lsprotocol-2023.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2" + +[[packages]] +name = "lxml" +version = "6.0.2" + +[[packages.wheels]] +name = "lxml-6.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed" + +[[packages]] +name = "mako" +version = "1.3.10" + +[[packages.wheels]] +name = "mako-1.3.10-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/fb/99f81ac72ae23375f22b7afdb7642aba97c00a713c217124420147681a2f/mako-1.3.10-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" + +[[packages]] +name = "markdown" +version = "3.9" + +[[packages.wheels]] +name = "markdown-3.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/70/ae/44c4a6a4cbb496d93c6257954260fe3a6e91b7bed2240e5dad2a717f5111/markdown-3.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280" + +[[packages]] +name = "markdown-it-py" +version = "4.0.0" + +[[packages.wheels]] +name = "markdown_it_py-4.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147" + +[[packages]] +name = "markupsafe" +version = "3.0.3" + +[[packages.wheels]] +name = "markupsafe-3.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581" + +[[packages]] +name = "matplotlib" +version = "3.10.8" + +[[packages.wheels]] +name = "matplotlib-3.10.8-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11" + +[[packages]] +name = "matplotlib-inline" +version = "0.2.1" + +[[packages.wheels]] +name = "matplotlib_inline-0.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/af/33/ee4519fa02ed11a94aef9559552f3b17bb863f2ecfe1a35dc7f548cde231/matplotlib_inline-0.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76" + +[[packages]] +name = "maturin" +version = "1.10.2" + +[[packages.wheels]] +name = "maturin-1.10.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a0/ec/c6c973b1def0d04533620b439d5d7aebb257657ba66710885394514c8045/maturin-1.10.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c" + +[[packages]] +name = "mccabe" +version = "0.7.0" + +[[packages.wheels]] +name = "mccabe-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e" + +[[packages]] +name = "mcp" +version = "1.21.0" + +[[packages.wheels]] +name = "mcp-1.21.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/39/47/850b6edc96c03bd44b00de9a0ca3c1cc71e0ba1cd5822955bc9e4eb3fad3/mcp-1.21.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b" + +[[packages]] +name = "mdurl" +version = "0.1.2" + +[[packages.wheels]] +name = "mdurl-0.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" + +[[packages]] +name = "mercantile" +version = "1.2.1" + +[[packages.wheels]] +name = "mercantile-1.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/d6/de0cc74f8d36976aeca0dd2e9cbf711882ff8e177495115fd82459afdc4d/mercantile-1.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f" + +[[packages]] +name = "mergedeep" +version = "1.3.4" + +[[packages.wheels]] +name = "mergedeep-1.3.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + +[[packages]] +name = "missingno" +version = "0.5.2" + +[[packages.wheels]] +name = "missingno-0.5.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/22/cd5cf999af21c2f97486622c551ac3d07361ced8125121e907f588ff5f24/missingno-0.5.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072" + +[[packages]] +name = "mistralai" +version = "1.9.11" + +[[packages.wheels]] +name = "mistralai-1.9.11-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fe/76/4ce12563aea5a76016f8643eff30ab731e6656c845e9e4d090ef10c7b925/mistralai-1.9.11-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3" + +[[packages]] +name = "mistune" +version = "3.1.4" + +[[packages.wheels]] +name = "mistune-3.1.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7a/f0/8282d9641415e9e33df173516226b404d367a0fc55e1a60424a152913abc/mistune-3.1.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d" + +[[packages]] +name = "mizani" +version = "0.14.3" + +[[packages.wheels]] +name = "mizani-0.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/d2/4ffcaa27c8a4b4f9ad456da4821c76dfbdfada23e8210cd4d80e1eb3236a/mizani-0.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688" + +[[packages]] +name = "ml-dtypes" +version = "0.5.3" + +[[packages.wheels]] +name = "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea" + +[[packages]] +name = "mlxtend" +version = "0.23.4" + +[[packages.wheels]] +name = "mlxtend-0.23.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4c/43/2fc7f76c8891aef148901f1ba3dee65c1cbac00a85ae5ee0dabc2b861256/mlxtend-0.23.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4" + +[[packages]] +name = "more-itertools" +version = "10.7.0" + +[[packages.wheels]] +name = "more_itertools-10.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2b/9f/7ba6f94fc1e9ac3d2b853fdff3035fb2fa5afbed898c4a72b8a020610594/more_itertools-10.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e" + +[[packages]] +name = "mpld3" +version = "0.5.12" + +[[packages.wheels]] +name = "mpld3-0.5.12-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5b/69/93b34728cc386efdde0c342f8c680b9187dea7beb7adaf6b58a0713be101/mpld3-0.5.12-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54" + +[[packages]] +name = "mpmath" +version = "1.3.0" + +[[packages.wheels]] +name = "mpmath-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c" + +[[packages]] +name = "msal" +version = "1.32.3" + +[[packages.wheels]] +name = "msal-1.32.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/04/bf/81516b9aac7fd867709984d08eb4db1d2e3fe1df795c8e442cde9b568962/msal-1.32.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569" + +[[packages]] +name = "msal-extensions" +version = "1.3.1" + +[[packages.wheels]] +name = "msal_extensions-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/75/bd9b7bb966668920f06b200e84454c8f3566b102183bc55c5473d96cb2b9/msal_extensions-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca" + +[[packages]] +name = "multidict" +version = "6.7.0" + +[[packages.wheels]] +name = "multidict-6.7.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/82/16/7ed27b680791b939de138f906d5cf2b4657b0d45ca6f5dd6236fdddafb1a/multidict-6.7.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c" + +[[packages]] +name = "mypy" +version = "1.19.0" + +[[packages.wheels]] +name = "mypy-1.19.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fe/b0/c33921e73aaa0106224e5a34822411bea38046188eb781637f5a5b07e269/mypy-1.19.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1" + +[[packages]] +name = "mypy-extensions" +version = "1.1.0" + +[[packages.wheels]] +name = "mypy_extensions-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505" + +[[packages]] +name = "namex" +version = "0.1.0" + +[[packages.wheels]] +name = "namex-0.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/bc/465daf1de06409cdd4532082806770ee0d8d7df434da79c76564d0f69741/namex-0.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c" + +[[packages]] +name = "narwhals" +version = "2.12.0" + +[[packages.wheels]] +name = "narwhals-2.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/9a/c6f79de7ba3a0a8473129936b7b90aa461d3d46fec6f1627672b1dccf4e9/narwhals-2.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb" + +[[packages]] +name = "nbclient" +version = "0.10.2" + +[[packages.wheels]] +name = "nbclient-0.10.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d" + +[[packages]] +name = "nbconvert" +version = "7.16.6" + +[[packages.wheels]] +name = "nbconvert-7.16.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b" + +[[packages]] +name = "nbformat" +version = "5.10.4" + +[[packages.wheels]] +name = "nbformat-5.10.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b" + +[[packages]] +name = "nest-asyncio" +version = "1.6.0" + +[[packages.wheels]] +name = "nest_asyncio-1.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c" + +[[packages]] +name = "networkx" +version = "3.6.1" + +[[packages.wheels]] +name = "networkx-3.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762" + +[[packages]] +name = "nh3" +version = "0.3.2" + +[[packages.wheels]] +name = "nh3-0.3.2-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/64/9a/1a1c154f10a575d20dd634e5697805e589bbdb7673a0ad00e8da90044ba7/nh3-0.3.2-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe" + +[[packages]] +name = "nltk" +version = "3.9.1" + +[[packages.wheels]] +name = "nltk-3.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/66/7d9e26593edda06e8cb531874633f7c2372279c3b0f46235539fe546df8b/nltk-3.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1" + +[[packages]] +name = "notebook" +version = "7.5.0" + +[[packages.wheels]] +name = "notebook-7.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/96/00df2a4760f10f5af0f45c4955573cae6189931f9a30265a35865f8c1031/notebook-7.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811" + +[[packages]] +name = "notebook-shim" +version = "0.2.4" + +[[packages.wheels]] +name = "notebook_shim-0.2.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef" + +[[packages]] +name = "numba" +version = "0.63.1" + +[[packages.wheels]] +name = "numba-0.63.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0d/5f/4d0c9e756732577a52211f31da13a3d943d185f7fb90723f56d79c696caa/numba-0.63.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f" + +[[packages]] +name = "numpy" +version = "2.3.5" + +[[packages.wheels]] +name = "numpy-2.3.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a3/2e/235b4d96619931192c91660805e5e49242389742a7a82c27665021db690c/numpy-2.3.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e" + +[[packages]] +name = "numpydoc" +version = "1.8.0" + +[[packages.wheels]] +name = "numpydoc-1.8.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6c/45/56d99ba9366476cd8548527667f01869279cedb9e66b28eb4dfb27701679/numpydoc-1.8.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541" + +[[packages]] +name = "openai" +version = "2.11.0" + +[[packages.wheels]] +name = "openai-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/f1/d9251b565fce9f8daeb45611e3e0d2f7f248429e40908dcee3b6fe1b5944/openai-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa" + +[[packages]] +name = "openpyxl" +version = "3.1.5" + +[[packages.wheels]] +name = "openpyxl-3.1.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2" + +[[packages]] +name = "opentelemetry-api" +version = "1.34.1" + +[[packages.wheels]] +name = "opentelemetry_api-1.34.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/3a/2ba85557e8dc024c0842ad22c570418dc02c36cbd1ab4b832a93edf071b8/opentelemetry_api-1.34.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c" + +[[packages]] +name = "optree" +version = "0.17.0" + +[[packages.wheels]] +name = "optree-0.17.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/84/05/5865e2a33c535c6b47378a43605de17cc286de59b93dc7814eb122861963/optree-0.17.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc" + +[[packages]] +name = "optuna" +version = "4.2.1" + +[[packages.wheels]] +name = "optuna-4.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/09/c4d329f7969443cdd4d482048ca406b6f61cda3c8e99ace71feaec7c8734/optuna-4.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf" + +[[packages]] +name = "orjson" +version = "3.11.4" + +[[packages.wheels]] +name = "orjson-3.11.4-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/63/b8/718eecf0bb7e9d64e4956afaafd23db9f04c776d445f59fe94f54bdae8f0/orjson-3.11.4-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1" + +[[packages]] +name = "ormsgpack" +version = "1.12.0" + +[[packages.wheels]] +name = "ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0b/dd/0a86195ee7a1a96c088aefc8504385e881cf56f4563ed81bafe21cbf1fb0/ormsgpack-1.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c" + +[[packages]] +name = "outcome" +version = "1.3.0.post0" + +[[packages.wheels]] +name = "outcome-1.3.0.post0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/8b/5ab7257531a5d830fc8000c476e63c935488d74609b50f9384a643ec0a62/outcome-1.3.0.post0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pandas" +version = "2.3.3" + +[[packages.wheels]] +name = "pandas-2.3.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5" + +[[packages]] +name = "pandocfilters" +version = "1.5.1" + +[[packages.wheels]] +name = "pandocfilters-1.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc" + +[[packages]] +name = "papermill" +version = "2.6.0" + +[[packages.wheels]] +name = "papermill-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/55/83ce641bc61a70cc0721af6f50154ecaaccedfbdbc27366c1755a2a34972/papermill-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5" + +[[packages]] +name = "parso" +version = "0.8.5" + +[[packages.wheels]] +name = "parso-0.8.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887" + +[[packages]] +name = "partd" +version = "1.4.2" + +[[packages.wheels]] +name = "partd-1.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f" + +[[packages]] +name = "pathspec" +version = "0.12.1" + +[[packages.wheels]] +name = "pathspec-0.12.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08" + +[[packages]] +name = "patsy" +version = "1.0.1" + +[[packages.wheels]] +name = "patsy-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/87/2b/b50d3d08ea0fc419c183a84210571eba005328efa62b6b98bc28e9ead32a/patsy-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c" + +[[packages]] +name = "pep8" +version = "1.7.1" + +[[packages.wheels]] +name = "pep8-1.7.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/42/3f/669429ce58de2c22d8d2c542752e137ec4b9885fff398d3eceb1a7f5acb4/pep8-1.7.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee" + +[[packages]] +name = "pexpect" +version = "4.9.0" + +[[packages.wheels]] +name = "pexpect-4.9.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523" + +[[packages]] +name = "pg8000" +version = "1.31.5" + +[[packages.wheels]] +name = "pg8000-1.31.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/07/5fd183858dff4d24840f07fc845f213cd371a19958558607ba22035dadd7/pg8000-1.31.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201" + +[[packages]] +name = "pickleshare" +version = "0.7.5" + +[[packages.wheels]] +name = "pickleshare-0.7.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9a/41/220f49aaea88bc6fa6cba8d05ecf24676326156c23b991e80b3f2fc24c77/pickleshare-0.7.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + +[[packages]] +name = "pillow" +version = "12.0.0" + +[[packages.wheels]] +name = "pillow-12.0.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/2b/24/b350c31543fb0107ab2599464d7e28e6f856027aadda995022e695313d94/pillow-12.0.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b" + +[[packages]] +name = "pip" +version = "25.3" + +[[packages.wheels]] +name = "pip-25.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/44/3c/d717024885424591d5376220b5e836c2d5293ce2011523c9de23ff7bf068/pip-25.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd" + +[[packages]] +name = "pipdeptree" +version = "2.30.0" + +[[packages.wheels]] +name = "pipdeptree-2.30.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/90/3d/21d6b9a0d04c6aa48621d500af4648435e4b0906437c8474ddb188249436/pipdeptree-2.30.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6" + +[[packages]] +name = "platformdirs" +version = "4.5.0" + +[[packages.wheels]] +name = "platformdirs-4.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/73/cb/ac7874b3e5d58441674fb70742e6c374b28b0c7cb988d37d991cde47166c/platformdirs-4.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3" + +[[packages]] +name = "plotly" +version = "6.5.0" + +[[packages.wheels]] +name = "plotly-6.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/c3/3031c931098de393393e1f93a38dc9ed6805d86bb801acc3cf2d5bd1e6b7/plotly-6.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a" + +[[packages]] +name = "plotnine" +version = "0.15.2" + +[[packages.wheels]] +name = "plotnine-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/58/27/4e6ffe2f095fbfd6285343aa6114903a4cf011564b4f1f2bb706341472df/plotnine-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6" + +[[packages]] +name = "pluggy" +version = "1.5.0" + +[[packages.wheels]] +name = "pluggy-1.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669" + +[[packages]] +name = "ply" +version = "3.11" + +[[packages.wheels]] +name = "ply-3.11-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" + +[[packages]] +name = "polars" +version = "1.36.1" + +[[packages.wheels]] +name = "polars-1.36.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f6/c6/36a1b874036b49893ecae0ac44a2f63d1a76e6212631a5b2f50a86e0e8af/polars-1.36.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef" + +[[packages]] +name = "polars-runtime-32" +version = "1.36.1" + +[[packages.wheels]] +name = "polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/05/0f/e629713a72999939b7b4bfdbf030a32794db588b04fdf3dc977dd8ea6c53/polars_runtime_32-1.36.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0" + +[[packages]] +name = "prettytable" +version = "3.16.0" + +[[packages.wheels]] +name = "prettytable-3.16.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/02/c7/5613524e606ea1688b3bdbf48aa64bafb6d0a4ac3750274c43b6158a390f/prettytable-3.16.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa" + +[[packages]] +name = "prince" +version = "0.16.2" + +[[packages.wheels]] +name = "prince-0.16.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/fe/92068ae56c8a88ee9123234014233561917dcd5c56c26a2c99f014444d36/prince-0.16.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848" + +[[packages]] +name = "priority" +version = "2.0.0" + +[[packages.wheels]] +name = "priority-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/5f/82c8074f7e84978129347c2c6ec8b6c59f3584ff1a20bc3c940a3e061790/priority-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa" + +[[packages]] +name = "prometheus-client" +version = "0.21.1" + +[[packages.wheels]] +name = "prometheus_client-0.21.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301" + +[[packages]] +name = "prompt-toolkit" +version = "3.0.52" + +[[packages.wheels]] +name = "prompt_toolkit-3.0.52-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955" + +[[packages]] +name = "propcache" +version = "0.4.1" + +[[packages.wheels]] +name = "propcache-0.4.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153" + +[[packages]] +name = "psutil" +version = "7.1.1" + +[[packages.wheels]] +name = "psutil-7.1.1-cp37-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/f3/11fd213fff15427bc2853552138760c720fd65032d99edfb161910d04127/psutil-7.1.1-cp37-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3" + +[[packages]] +name = "psycopg2" +version = "2.9.11" + +[[packages.wheels]] +name = "psycopg2-2.9.11-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/47/08/737aa39c78d705a7ce58248d00eeba0e9fc36be488f9b672b88736fbb1f7/psycopg2-2.9.11-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578" + +[[packages]] +name = "psygnal" +version = "0.15.0" + +[[packages.wheels]] +name = "psygnal-0.15.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/88/aafeeaf8543189e77dac5f833fe6fac1d3f37a62932da445ccd9533e6770/psygnal-0.15.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6" + +[[packages]] +name = "ptyprocess" +version = "0.7.0" + +[[packages.wheels]] +name = "ptyprocess-0.7.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35" + +[[packages]] +name = "pure-eval" +version = "0.2.3" + +[[packages.wheels]] +name = "pure_eval-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0" + +[[packages]] +name = "pyasn1" +version = "0.6.1" + +[[packages.wheels]] +name = "pyasn1-0.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629" + +[[packages]] +name = "pyasn1-modules" +version = "0.4.1" + +[[packages.wheels]] +name = "pyasn1_modules-0.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd" + +[[packages]] +name = "pybind11" +version = "3.0.0" + +[[packages.wheels]] +name = "pybind11-3.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/9c/85f50a5476832c3efc67b6d7997808388236ae4754bf53e1749b3bc27577/pybind11-3.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607" + +[[packages]] +name = "pycodestyle" +version = "2.12.0" + +[[packages.wheels]] +name = "pycodestyle-2.12.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/55/c4/bf8ede2d1641e0a2e027c6d0c7060e00332851ea772cc5cee42a4a207707/pycodestyle-2.12.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4" + +[[packages]] +name = "pycparser" +version = "2.23" + +[[packages.wheels]] +name = "pycparser-2.23-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a0/e3/59cd50310fc9b59512193629e1984c1f95e5c8ae6e5d8c69532ccc65a7fe/pycparser-2.23-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934" + +[[packages]] +name = "pydantic" +version = "2.12.5" + +[[packages.wheels]] +name = "pydantic-2.12.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d" + +[[packages]] +name = "pydantic-ai-slim" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_ai_slim-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/91/0e/b602242286d8247c8b27efadac0c2f01d006ea0cf3c99e8a5c2159ab46ca/pydantic_ai_slim-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a" + +[[packages]] +name = "pydantic-core" +version = "2.41.5" + +[[packages.wheels]] +name = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf" + +[[packages]] +name = "pydantic-evals" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_evals-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/d3/c9218177906f537503c99bc8229641f5294c29ef1770fcf45e237b9181ce/pydantic_evals-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3" + +[[packages]] +name = "pydantic-graph" +version = "1.12.0" + +[[packages.wheels]] +name = "pydantic_graph-1.12.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/8f/880b83a761ac212ba640009b5b1a55f4caf60ffd7186544c31b382fa49fe/pydantic_graph-1.12.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0" + +[[packages]] +name = "pydantic-settings" +version = "2.11.0" + +[[packages.wheels]] +name = "pydantic_settings-2.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/d6/887a1ff844e64aa823fb4905978d882a633cfe295c32eacad582b78a7d8b/pydantic_settings-2.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c" + +[[packages]] +name = "pydocstyle" +version = "6.3.0" + +[[packages.wheels]] +name = "pydocstyle-6.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/ea/99ddefac41971acad68f14114f38261c1f27dac0b3ec529824ebc739bdaa/pydocstyle-6.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019" + +[[packages]] +name = "pydot" +version = "4.0.1" + +[[packages.wheels]] +name = "pydot-4.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/32/a7125fb28c4261a627f999d5fb4afff25b523800faed2c30979949d6facd/pydot-4.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6" + +[[packages]] +name = "pydub" +version = "0.25.1" + +[[packages.wheels]] +name = "pydub-0.25.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6" + +[[packages]] +name = "pyerfa" +version = "2.0.1.5" + +[[packages.wheels]] +name = "pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0" + +[[packages]] +name = "pyflakes" +version = "3.2.0" + +[[packages.wheels]] +name = "pyflakes-3.2.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d4/d7/f1b7db88d8e4417c5d47adad627a93547f44bdc9028372dbd2313f34a855/pyflakes-3.2.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a" + +[[packages]] +name = "pygithub" +version = "2.6.1" + +[[packages.wheels]] +name = "PyGithub-2.6.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/fc/a444cd19ccc8c4946a512f3827ed0b3565c88488719d800d54a75d541c0b/PyGithub-2.6.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3" + +[[packages]] +name = "pygments" +version = "2.19.1" + +[[packages.wheels]] +name = "pygments-2.19.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8a/0b/9fcc47d19c48b59121088dd6da2488a49d5f72dacf8262e2790a1d2c7d15/pygments-2.19.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c" + +[[packages]] +name = "pyjwt" +version = "2.10.1" + +[[packages.wheels]] +name = "PyJWT-2.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" + +[[packages]] +name = "pylint" +version = "3.3.8" + +[[packages.wheels]] +name = "pylint-3.3.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/1a/711e93a7ab6c392e349428ea56e794a3902bb4e0284c1997cff2d7efdbc1/pylint-3.3.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83" + +[[packages]] +name = "pylint-venv" +version = "3.0.4" + +[[packages.wheels]] +name = "pylint_venv-3.0.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/10/040e1928236e3d34b26639e3427df88c7249a85aadc621cea2158589b4f8/pylint_venv-3.0.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c" + +[[packages]] +name = "pyls-spyder" +version = "0.4.0" + +[[packages.wheels]] +name = "pyls_spyder-0.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/26/d0975972af1f18c3bb02ec5889191cc09ebb982bcbe45438d90ca763f4ec/pyls_spyder-0.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9" + +[[packages]] +name = "pymongo" +version = "4.15.3" + +[[packages.wheels]] +name = "pymongo-4.15.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/98/b5/14aa417a44ea86d4c31de83b26f6e6793f736cd60e7e7fda289ce5184bdf/pymongo-4.15.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340" + +[[packages]] +name = "pympler" +version = "1.1" + +[[packages.wheels]] +name = "Pympler-1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/79/4f/a6a2e2b202d7fd97eadfe90979845b8706676b41cbd3b42ba75adf329d1f/Pympler-1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506" + +[[packages]] +name = "pynacl" +version = "1.6.1" + +[[packages.wheels]] +name = "pynacl-1.6.1-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21" + +[[packages]] +name = "pynndescent" +version = "0.5.13" + +[[packages.wheels]] +name = "pynndescent-0.5.13-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d2/53/d23a97e0a2c690d40b165d1062e2c4ccc796be458a1ce59f6ba030434663/pynndescent-0.5.13-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949" + +[[packages]] +name = "pyodbc" +version = "5.3.0" + +[[packages.wheels]] +name = "pyodbc-5.3.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b8/79/c48be07e8634f764662d7a279ac204f93d64172162dbf90f215e2398b0bd/pyodbc-5.3.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39" + +[[packages]] +name = "pyogrio" +version = "0.12.1" + +[[packages.wheels]] +name = "pyogrio-0.12.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/13/bc/e4522f429c45a3b6ad28185849dd76e5c8718b780883c4795e7ee41841ae/pyogrio-0.12.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363" + +[[packages]] +name = "pyomo" +version = "6.9.5" + +[[packages.wheels]] +name = "pyomo-6.9.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/68/29/394967f7df51788cbdf1b4aedfb7c5a3a62e11b85b4c9d806b86cc576be4/pyomo-6.9.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f" + +[[packages]] +name = "pypandoc" +version = "1.15" + +[[packages.wheels]] +name = "pypandoc-1.15-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/61/06/0763e0ccc81754d3eadb21b2cb86cf21bdedc9b52698c2ad6785db7f0a4e/pypandoc-1.15-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16" + +[[packages]] +name = "pyparsing" +version = "3.2.5" + +[[packages.wheels]] +name = "pyparsing-3.2.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/10/5e/1aa9a93198c6b64513c9d7752de7422c06402de6600a8767da1524f9570b/pyparsing-3.2.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e" + +[[packages]] +name = "pypdf" +version = "5.6.0" + +[[packages.wheels]] +name = "pypdf-5.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/71/8b/dc3a72d98c22be7a4cbd664ad14c5a3e6295c2dbdf572865ed61e24b5e38/pypdf-5.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7" + +[[packages]] +name = "pyperclip" +version = "1.11.0" + +[[packages.wheels]] +name = "pyperclip-1.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273" + +[[packages]] +name = "pyproj" +version = "3.7.2" + +[[packages.wheels]] +name = "pyproj-3.7.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "pyqt5" +version = "5.15.11" + +[[packages.wheels]] +name = "PyQt5-5.15.11-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/56/d5/68eb9f3d19ce65df01b6c7b7a577ad3bbc9ab3a5dd3491a4756e71838ec9/PyQt5-5.15.11-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517" + +[[packages]] +name = "pyqt5-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/37/97/5d3b222b924fa2ed4c2488925155cd0b03fd5d09ee1cfcf7c553c11c9f66/PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962" + +[[packages]] +name = "pyqt5-sip" +version = "12.17.1" + +[[packages.wheels]] +name = "pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/40/8c/e96f9877548810b1e537f46fc21ba74552dd4e8c498658114a8353bdf659/pyqt5_sip-12.17.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63" + +[[packages]] +name = "pyqtgraph" +version = "0.14.0" + +[[packages.wheels]] +name = "pyqtgraph-0.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5" + +[[packages]] +name = "pyqtwebengine" +version = "5.15.7" + +[[packages.wheels]] +name = "PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/39/67/0dead50889d905fc99f40e61e5ab7f73746605ce8f74c4fa7fb3fc1d6c5e/PyQtWebEngine-5.15.7-cp38-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f" + +[[packages]] +name = "pyqtwebengine-qt5" +version = "5.15.2" + +[[packages.wheels]] +name = "PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/e0/db/0f29bd882aee8b5754f3e1ab104d2d09cdd9138a889558b43badcd81ce11/PyQtWebEngine_Qt5-5.15.2-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d" + +[[packages]] +name = "pyserial" +version = "3.5" + +[[packages.wheels]] +name = "pyserial-3.5-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0" + +[[packages]] +name = "pysocks" +version = "1.7.1" + +[[packages.wheels]] +name = "PySocks-1.7.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5" + +[[packages]] +name = "pyspnego" +version = "0.11.2" + +[[packages.wheels]] +name = "pyspnego-0.11.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/57/ea/b3c1438839d8724beff7b31ec42b9d041265dc9ca27ccb54477d442bfbcf/pyspnego-0.11.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4" + +[[packages]] +name = "pytest" +version = "8.4.1" + +[[packages.wheels]] +name = "pytest-8.4.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7" + +[[packages]] +name = "python-barcode" +version = "0.16.1" + +[[packages.wheels]] +name = "python_barcode-0.16.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b2/34/810885dca784b02e5ad0f71ced9c06ba5e9d33a6493bc886f7470ce82a39/python_barcode-0.16.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367" + +[[packages]] +name = "python-dateutil" +version = "2.8.2" + +[[packages.wheels]] +name = "python_dateutil-2.8.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/36/7a/87837f39d0296e723bb9b62bbb257d0355c7f6128853c78955f57342a56d/python_dateutil-2.8.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + +[[packages]] +name = "python-dotenv" +version = "1.1.0" + +[[packages.wheels]] +name = "python_dotenv-1.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" + +[[packages]] +name = "python-json-logger" +version = "3.3.0" + +[[packages.wheels]] +name = "python_json_logger-3.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7" + +[[packages]] +name = "python-lsp-black" +version = "2.0.0" + +[[packages.wheels]] +name = "python_lsp_black-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/44/fef9b4d027b3d6321e6f30b6b5946bef18cd84a96e1d81012ac0f69ea53c/python_lsp_black-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e" + +[[packages]] +name = "python-lsp-jsonrpc" +version = "1.1.2" + +[[packages.wheels]] +name = "python_lsp_jsonrpc-1.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c" + +[[packages]] +name = "python-lsp-ruff" +version = "2.3.0" + +[[packages.wheels]] +name = "python_lsp_ruff-2.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/c0/761e359e255fce641c263a3c3e43f7685d1667139e9d35a376c1cc9f6f70/python_lsp_ruff-2.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f" + +[[packages]] +name = "python-lsp-server" +version = "1.13.2" + +[[packages.wheels]] +name = "python_lsp_server-1.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/16/84/f4400dcff77bbb32717abe728bf54672d58aad57e1a6699c1beaf54ce107/python_lsp_server-1.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0" + +[[packages]] +name = "python-multipart" +version = "0.0.20" + +[[packages.wheels]] +name = "python_multipart-0.0.20-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104" + +[[packages]] +name = "python-slugify" +version = "8.0.4" + +[[packages.wheels]] +name = "python_slugify-8.0.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a4/62/02da182e544a51a5c3ccf4b03ab79df279f9c60c5e82d5e8bec7ca26ac11/python_slugify-8.0.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8" + +[[packages]] +name = "pythonqwt" +version = "0.15.0" + +[[packages.wheels]] +name = "pythonqwt-0.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/39/7f4d647a436c55ec3c7570dc3e66cec8a44f19d316598bcb226a16a2b5f6/pythonqwt-0.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407" + +[[packages]] +name = "pytokens" +version = "0.3.0" + +[[packages.wheels]] +name = "pytokens-0.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/84/25/d9db8be44e205a124f6c98bc0324b2bb149b7431c53877fc6d1038dddaf5/pytokens-0.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3" + +[[packages]] +name = "pytoolconfig" +version = "1.3.1" + +[[packages.wheels]] +name = "pytoolconfig-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/92/44/da239917f5711ca7105f7d7f9e2765716dd883b241529beafc0f28504725/pytoolconfig-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b" + +[[packages]] +name = "pytz" +version = "2025.2" + +[[packages.wheels]] +name = "pytz-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00" + +[[packages]] +name = "pyuca" +version = "1.2" + +[[packages.wheels]] +name = "pyuca-1.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/98/88/aeeee34d88f841aca712a8c18fbd62a33eaad8f2dbe535e87f3c829b02f9/pyuca-1.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e" + +[[packages]] +name = "pyusb" +version = "1.3.1" + +[[packages.wheels]] +name = "pyusb-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/28/b8/27e6312e86408a44fe16bd28ee12dd98608b39f7e7e57884a24e8f29b573/pyusb-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430" + +[[packages]] +name = "pyvisa" +version = "1.15.0" + +[[packages.wheels]] +name = "pyvisa-1.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a1/12/4979772f36acceb57664bde282fc7bd3e67f8d0ce85f2a521a05e90baaa5/pyvisa-1.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309" + +[[packages]] +name = "pywavelets" +version = "1.9.0" + +[[packages.wheels]] +name = "pywavelets-1.9.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/7d/66/1d071eae5cc3e3ad0e45334462f8ce526a79767ccb759eb851aa5b78a73a/pywavelets-1.9.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7" + +[[packages]] +name = "pywin32" +version = "311" + +[[packages.wheels]] +name = "pywin32-311-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87" + +[[packages]] +name = "pywin32-ctypes" +version = "0.2.3" + +[[packages.wheels]] +name = "pywin32_ctypes-0.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8" + +[[packages]] +name = "pywinpty" +version = "3.0.2" + +[[packages.wheels]] +name = "pywinpty-3.0.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ca/15/f12c6055e2d7a617d4d5820e8ac4ceaff849da4cb124640ef5116a230771/pywinpty-3.0.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a" + +[[packages]] +name = "pyyaml" +version = "6.0.3" + +[[packages.wheels]] +name = "pyyaml-6.0.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" + +[[packages]] +name = "pyzmq" +version = "27.1.0" + +[[packages.wheels]] +name = "pyzmq-27.1.0-cp312-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf" + +[[packages]] +name = "qdarkstyle" +version = "3.2.3" + +[[packages.wheels]] +name = "QDarkStyle-3.2.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/93/7d/c3c10498430dadcea4def5faddf71cd199e577d20a125e7ef1e9d7bdbbfa/QDarkStyle-3.2.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc" + +[[packages]] +name = "qrcode" +version = "8.2" + +[[packages.wheels]] +name = "qrcode-8.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f" + +[[packages]] +name = "qstylizer" +version = "0.2.4" + +[[packages.wheels]] +name = "qstylizer-0.2.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2d/ba/2a4e51861942c2bc3be60400c69f6713359c3e307aee4696f2ea47f35811/qstylizer-0.2.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f" + +[[packages]] +name = "qtawesome" +version = "1.4.0" + +[[packages.wheels]] +name = "qtawesome-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a5/ee/6e6c6715129c929af2d95ddb2e9decf54c1beffe58f336911197aacc0448/qtawesome-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93" + +[[packages]] +name = "qtconsole" +version = "5.7.0" + +[[packages.wheels]] +name = "qtconsole-5.7.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/97/d2/3cb0980a6a4a2581facc4d47b2e7d99912a1f7065407f007f27419e19979/qtconsole-5.7.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22" + +[[packages]] +name = "qtpy" +version = "2.4.3" + +[[packages.wheels]] +name = "QtPy-2.4.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/69/76/37c0ccd5ab968a6a438f9c623aeecc84c202ab2fabc6a8fd927580c15b5a/QtPy-2.4.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1" + +[[packages]] +name = "quantecon" +version = "0.10.1" + +[[packages.wheels]] +name = "quantecon-0.10.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0c/33/07044ad6529c01ce4fac032d2124d2815ead529fb95eb6616aed8c0a57c1/quantecon-0.10.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4" + +[[packages]] +name = "quart" +version = "0.20.0" + +[[packages.wheels]] +name = "quart-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7e/e9/cc28f21f52913adf333f653b9e0a3bf9cb223f5083a26422968ba73edd8d/quart-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1" + +[[packages]] +name = "rapidfuzz" +version = "3.14.3" + +[[packages.wheels]] +name = "rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/06/8a/f2fa5e9635b1ccafda4accf0e38246003f69982d7c81f2faa150014525a4/rapidfuzz-3.14.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9" + +[[packages]] +name = "readme-renderer" +version = "44.0" + +[[packages.wheels]] +name = "readme_renderer-44.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151" + +[[packages]] +name = "redis" +version = "5.2.1" + +[[packages.wheels]] +name = "redis-5.2.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3c/5f/fa26b9b2672cbe30e07d9a5bdf39cf16e3b80b42916757c5f92bca88e4ba/redis-5.2.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4" + +[[packages]] +name = "referencing" +version = "0.37.0" + +[[packages.wheels]] +name = "referencing-0.37.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231" + +[[packages]] +name = "regex" +version = "2025.10.23" + +[[packages.wheels]] +name = "regex-2025.10.23-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/48/f8/ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117/regex-2025.10.23-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796" + +[[packages]] +name = "reportlab" +version = "4.4.2" + +[[packages.wheels]] +name = "reportlab-4.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9f/74/ed990bc9586605d4e46f6b0e0b978a5b8e757aa599e39664bee26d6dc666/reportlab-4.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2" + +[[packages]] +name = "requests" +version = "2.32.5" + +[[packages.wheels]] +name = "requests-2.32.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6" + +[[packages]] +name = "requests-ntlm" +version = "1.3.0" + +[[packages.wheels]] +name = "requests_ntlm-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/5d/836b97537a390cf811b0488490c389c5a614f0a93acb23f347bd37a2d914/requests_ntlm-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510" + +[[packages]] +name = "requests-toolbelt" +version = "1.0.0" + +[[packages.wheels]] +name = "requests_toolbelt-1.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06" + +[[packages]] +name = "rfc3339-validator" +version = "0.1.4" + +[[packages.wheels]] +name = "rfc3339_validator-0.1.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa" + +[[packages]] +name = "rfc3986" +version = "2.0.0" + +[[packages.wheels]] +name = "rfc3986-2.0.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd" + +[[packages]] +name = "rfc3986-validator" +version = "0.1.1" + +[[packages.wheels]] +name = "rfc3986_validator-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9" + +[[packages]] +name = "rich" +version = "14.1.0" + +[[packages.wheels]] +name = "rich-14.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e3/30/3c4d035596d3cf444529e0b2953ad0466f6049528a879d27534700580395/rich-14.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f" + +[[packages]] +name = "roman-numerals-py" +version = "3.1.0" + +[[packages.wheels]] +name = "roman_numerals_py-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/53/97/d2cbbaa10c9b826af0e10fdf836e1bf344d9f0abb873ebc34d1f49642d3f/roman_numerals_py-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c" + +[[packages]] +name = "rope" +version = "1.14.0" + +[[packages.wheels]] +name = "rope-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/75/35/130469d1901da2b3a5a377539b4ffcd8a5c983f1c9e3ba5ffdd8d71ae314/rope-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918" + +[[packages]] +name = "rpds-py" +version = "0.27.1" + +[[packages.wheels]] +name = "rpds_py-0.27.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/be/07/c802bc6b8e95be83b79bdf23d1aa61d68324cb1006e245d6c58e959e314d/rpds_py-0.27.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456" + +[[packages]] +name = "rsa" +version = "4.9.1" + +[[packages.wheels]] +name = "rsa-4.9.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762" + +[[packages]] +name = "rtree" +version = "1.4.0" + +[[packages.wheels]] +name = "rtree-1.4.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4" + +[[packages]] +name = "ruff" +version = "0.14.7" + +[[packages.wheels]] +name = "ruff-0.14.7-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/a8/b5/d0b7d145963136b564806f6584647af45ab98946660d399ec4da79cae036/ruff-0.14.7-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6" + +[[packages]] +name = "rx" +version = "3.2.0" + +[[packages.wheels]] +name = "Rx-3.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e2/a9/efeaeca4928a9a56d04d609b5730994d610c82cf4d9dd7aa173e6ef4233e/Rx-3.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8" + +[[packages]] +name = "scikit-learn" +version = "1.8.0" + +[[packages.wheels]] +name = "scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/76/18/a8def8f91b18cd1ba6e05dbe02540168cb24d47e8dcf69e8d00b7da42a08/scikit_learn-1.8.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6" + +[[packages]] +name = "scipy" +version = "1.16.3" + +[[packages.wheels]] +name = "scipy-1.16.3-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/91/06/837893227b043fb9b0d13e4bd7586982d8136cb249ffb3492930dab905b8/scipy-1.16.3-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d" + +[[packages]] +name = "scramp" +version = "1.4.5" + +[[packages.wheels]] +name = "scramp-1.4.5-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/9f/8b2f2749ccfbe4fcef08650896ac47ed919ff25b7ac57b7a1ae7da16c8c3/scramp-1.4.5-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7" + +[[packages]] +name = "scs" +version = "3.2.9" + +[[packages.wheels]] +name = "scs-3.2.9-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/03/76/3733c2bf1c2022d6bad92ed2a0146e2129ef992afa87708d20b1b36c5a1d/scs-3.2.9-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff" + +[[packages]] +name = "seaborn" +version = "0.13.2" + +[[packages.wheels]] +name = "seaborn-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/83/11/00d3c3dfc25ad54e731d91449895a79e4bf2384dc3ac01809010ba88f6d5/seaborn-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987" + +[[packages]] +name = "send2trash" +version = "1.8.3" + +[[packages.wheels]] +name = "Send2Trash-1.8.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "shapely" +version = "2.1.2" + +[[packages.wheels]] +name = "shapely-2.1.2-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c" + +[[packages]] +name = "shellingham" +version = "1.5.4" + +[[packages.wheels]] +name = "shellingham-1.5.4-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" + +[[packages]] +name = "simplejson" +version = "3.20.2" + +[[packages.wheels]] +name = "simplejson-3.20.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/05/5b/83e1ff87eb60ca706972f7e02e15c0b33396e7bdbd080069a5d1b53cf0d8/simplejson-3.20.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017" + +[[packages]] +name = "simpy" +version = "4.1.1" + +[[packages.wheels]] +name = "simpy-4.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/48/72/920ed1224c94a8a5a69e6c1275ac7fe4eb911ba8feffddf469f1629d47f3/simpy-4.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88" + +[[packages]] +name = "six" +version = "1.17.0" + +[[packages.wheels]] +name = "six-1.17.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274" + +[[packages]] +name = "skrub" +version = "0.6.2" + +[[packages.wheels]] +name = "skrub-0.6.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/12/c9/5c73686480c7cd84400c27f7120ebb378caf94beaaf26ba56471625e1c66/skrub-0.6.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f" + +[[packages]] +name = "sniffio" +version = "1.3.1" + +[[packages.wheels]] +name = "sniffio-1.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2" + +[[packages]] +name = "snowballstemmer" +version = "3.0.1" + +[[packages.wheels]] +name = "snowballstemmer-3.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c8/78/3565d011c61f5a43488987ee32b6f3f656e7f107ac2782dd57bdd7d91d9a/snowballstemmer-3.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064" + +[[packages]] +name = "sortedcontainers" +version = "2.4.0" + +[[packages.wheels]] +name = "sortedcontainers-2.4.0-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0" + +[[packages]] +name = "sounddevice" +version = "0.5.3" + +[[packages.wheels]] +name = "sounddevice-0.5.3-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/66/c7/16123d054aef6d445176c9122bfbe73c11087589b2413cab22aff5a7839a/sounddevice-0.5.3-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687" + +[[packages]] +name = "soundfile" +version = "0.13.1" + +[[packages.wheels]] +name = "soundfile-0.13.1-py2.py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/14/e9/6b761de83277f2f02ded7e7ea6f07828ec78e4b229b80e4ca55dd205b9dc/soundfile-0.13.1-py2.py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9" + +[[packages]] +name = "soupsieve" +version = "2.8" + +[[packages.wheels]] +name = "soupsieve-2.8-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/14/a0/bb38d3b76b8cae341dad93a2dd83ab7462e6dbcdd84d43f54ee60a8dc167/soupsieve-2.8-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c" + +[[packages]] +name = "sphinx" +version = "8.2.3" + +[[packages.wheels]] +name = "sphinx-8.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/31/53/136e9eca6e0b9dc0e1962e2c908fbea2e5ac000c2a2fbd9a35797958c48b/sphinx-8.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3" + +[[packages]] +name = "sphinx-rtd-theme" +version = "3.0.2" + +[[packages.wheels]] +name = "sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/85/77/46e3bac77b82b4df5bb5b61f2de98637724f246b4966cfc34bc5895d852a/sphinx_rtd_theme-3.0.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13" + +[[packages]] +name = "sphinxcontrib-applehelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5d/85/9ebeae2f76e9e77b952f4b274c27238156eae7979c5421fba91a28f4970d/sphinxcontrib_applehelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5" + +[[packages]] +name = "sphinxcontrib-devhelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/7a/987e583882f985fe4d7323774889ec58049171828b58c2217e7f79cdf44e/sphinxcontrib_devhelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2" + +[[packages]] +name = "sphinxcontrib-htmlhelp" +version = "2.1.0" + +[[packages.wheels]] +name = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0a/7b/18a8c0bcec9182c05a0b3ec2a776bba4ead82750a55ff798e8d406dae604/sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8" + +[[packages]] +name = "sphinxcontrib-jquery" +version = "4.1" + +[[packages.wheels]] +name = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/76/85/749bd22d1a68db7291c89e2ebca53f4306c3f205853cf31e9de279034c3c/sphinxcontrib_jquery-4.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae" + +[[packages]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" + +[[packages.wheels]] +name = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178" + +[[packages]] +name = "sphinxcontrib-qthelp" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/27/83/859ecdd180cacc13b1f7e857abf8582a64552ea7a061057a6c716e790fce/sphinxcontrib_qthelp-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb" + +[[packages]] +name = "sphinxcontrib-serializinghtml" +version = "2.0.0" + +[[packages.wheels]] +name = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/a7/d2782e4e3f77c8450f727ba74a8f12756d5ba823d81b941f1b04da9d033a/sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331" + +[[packages]] +name = "spyder" +version = "6.1.1" + +[[packages.wheels]] +name = "spyder-6.1.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/29/10/79cd23b5069d4aed2390cdffa831f99b45f5b4a8f7b272d7a887f5e487e1/spyder-6.1.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77" + +[[packages]] +name = "spyder-kernels" +version = "3.1.2" + +[[packages.wheels]] +name = "spyder_kernels-3.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/17/78/e15ea8e85cc5e27288bea0ac8b1d1b008f3899777a59a6ed5396bb96ea6c/spyder_kernels-3.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e" + +[[packages]] +name = "sqlalchemy" +version = "2.0.44" + +[[packages.wheels]] +name = "sqlalchemy-2.0.44-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/5e/6a29fa884d9fb7ddadf6b69490a9d45fded3b38541713010dad16b77d015/sqlalchemy-2.0.44-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sqlite-fts4" +version = "1.0.3" + +[[packages.wheels]] +name = "sqlite_fts4-1.0.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f" + +[[packages]] +name = "sqlite-utils" +version = "3.38" + +[[packages.wheels]] +name = "sqlite_utils-3.38-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9" + +[[packages]] +name = "sqlparse" +version = "0.5.3" + +[[packages.wheels]] +name = "sqlparse-0.5.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca" + +[[packages]] +name = "squarify" +version = "0.4.4" + +[[packages.wheels]] +name = "squarify-0.4.4-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/b7/3c/eedbe9fb07cc20fd9a8423da14b03bc270d0570b3ba9174a4497156a2152/squarify-0.4.4-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11" + +[[packages]] +name = "sse-starlette" +version = "3.0.2" + +[[packages.wheels]] +name = "sse_starlette-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ef/10/c78f463b4ef22eef8491f218f692be838282cd65480f6e423d7730dfd1fb/sse_starlette-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a" + +[[packages]] +name = "sspilib" +version = "0.4.0" + +[[packages.wheels]] +name = "sspilib-0.4.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/df/b1/61da91f341871af14ea0a26bcffe6b2b8dbb8eed3cda3f804b4dcee54ce8/sspilib-0.4.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94" + +[[packages]] +name = "stack-data" +version = "0.6.3" + +[[packages.wheels]] +name = "stack_data-0.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695" + +[[packages]] +name = "starlette" +version = "0.50.0" + +[[packages.wheels]] +name = "starlette-0.50.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca" + +[[packages]] +name = "statsmodels" +version = "0.14.6" + +[[packages.wheels]] +name = "statsmodels-0.14.6-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/26/33/f1652d0c59fa51de18492ee2345b65372550501ad061daa38f950be390b6/statsmodels-0.14.6-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721" + +[[packages]] +name = "superqt" +version = "0.7.6" + +[[packages.wheels]] +name = "superqt-0.7.6-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ac/60/b86845ddd057a307b92b7f5866f9e5e12bb5a471e087d71b481d68792c7f/superqt-0.7.6-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "sympy" +version = "1.14.0" + +[[packages.wheels]] +name = "sympy-1.14.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5" + +[[packages]] +name = "tabulate" +version = "0.9.0" + +[[packages.wheels]] +name = "tabulate-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f" + +[[packages]] +name = "tenacity" +version = "9.1.2" + +[[packages.wheels]] +name = "tenacity-9.1.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138" + +[[packages]] +name = "termcolor" +version = "3.1.0" + +[[packages.wheels]] +name = "termcolor-3.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa" + +[[packages]] +name = "terminado" +version = "0.18.1" + +[[packages.wheels]] +name = "terminado-0.18.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0" + +[[packages]] +name = "text-unidecode" +version = "1.3" + +[[packages.wheels]] +name = "text_unidecode-1.3-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8" + +[[packages]] +name = "textdistance" +version = "4.6.3" + +[[packages.wheels]] +name = "textdistance-4.6.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c6/c2/c62601c858010b0513a6434b9be19bd740533a6e861eddfd30b7258d92a0/textdistance-4.6.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56" + +[[packages]] +name = "thefuzz" +version = "0.22.1" + +[[packages.wheels]] +name = "thefuzz-0.22.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/82/4f/1695e70ceb3604f19eda9908e289c687ea81c4fecef4d90a9d1d0f2f7ae9/thefuzz-0.22.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481" + +[[packages]] +name = "threadpoolctl" +version = "3.6.0" + +[[packages.wheels]] +name = "threadpoolctl-3.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb" + +[[packages]] +name = "three-merge" +version = "0.1.1" + +[[packages.wheels]] +name = "three_merge-0.1.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/23/be/a52588102605ec52b4e88340d65a290b6465c1dbcd2d943ab149b012908b/three_merge-0.1.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464" + +[[packages]] +name = "tiktoken" +version = "0.12.0" + +[[packages.wheels]] +name = "tiktoken-0.12.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3" + +[[packages]] +name = "tinycss2" +version = "1.4.0" + +[[packages.wheels]] +name = "tinycss2-1.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289" + +[[packages]] +name = "tokenizers" +version = "0.22.1" + +[[packages.wheels]] +name = "tokenizers-0.22.1-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/b3/46/e33a8c93907b631a99377ef4c5f817ab453d0b34f93529421f42ff559671/tokenizers-0.22.1-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138" + +[[packages]] +name = "tomli-w" +version = "1.2.0" + +[[packages.wheels]] +name = "tomli_w-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90" + +[[packages]] +name = "tomlkit" +version = "0.13.2" + +[[packages.wheels]] +name = "tomlkit-0.13.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde" + +[[packages]] +name = "toolz" +version = "1.0.0" + +[[packages.wheels]] +name = "toolz-1.0.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/03/98/eb27cc78ad3af8e302c9d8ff4977f5026676e130d28dd7578132a457170c/toolz-1.0.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236" + +[[packages]] +name = "tornado" +version = "6.5.3" + +[[packages.wheels]] +name = "tornado-6.5.3-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/34/98/4f7f938606e21d0baea8c6c39a7c8e95bdf8e50b0595b1bb6f0de2af7a6e/tornado-6.5.3-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1" + +[[packages]] +name = "tqdm" +version = "4.67.1" + +[[packages.wheels]] +name = "tqdm-4.67.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2" + +[[packages]] +name = "traitlets" +version = "5.14.3" + +[[packages.wheels]] +name = "traitlets-5.14.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f" + +[[packages]] +name = "traittypes" +version = "0.2.1" + +[[packages.wheels]] +name = "traittypes-0.2.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/9c/d1/8d5bd662703cc1764d986f6908a608777305946fa634d34c470cd4a1e729/traittypes-0.2.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e" + +[[packages]] +name = "trio" +version = "0.32.0" + +[[packages.wheels]] +name = "trio-0.32.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/41/bf/945d527ff706233636c73880b22c7c953f3faeb9d6c7e2e85bfbfd0134a0/trio-0.32.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5" + +[[packages]] +name = "trove-classifiers" +version = "2025.9.11.17" + +[[packages.wheels]] +name = "trove_classifiers-2025.9.11.17-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e1/85/a4ff8758c66f1fc32aa5e9a145908394bf9cf1c79ffd1113cfdeb77e74e4/trove_classifiers-2025.9.11.17-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd" + +[[packages]] +name = "twine" +version = "6.1.0" + +[[packages.wheels]] +name = "twine-6.1.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7c/b6/74e927715a285743351233f33ea3c684528a0d374d2e43ff9ce9585b73fe/twine-6.1.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384" + +[[packages]] +name = "typer" +version = "0.15.2" + +[[packages.wheels]] +name = "typer-0.15.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/7f/fc/5b29fea8cee020515ca82cc68e3b8e1e34bb19a3535ad854cac9257b414c/typer-0.15.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc" + +[[packages]] +name = "typer-slim" +version = "0.20.0" + +[[packages.wheels]] +name = "typer_slim-0.20.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5e/dd/5cbf31f402f1cc0ab087c94d4669cfa55bd1e818688b910631e131d74e75/typer_slim-0.20.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d" + +[[packages]] +name = "types-python-dateutil" +version = "2.9.0.20250822" + +[[packages.wheels]] +name = "types_python_dateutil-2.9.0.20250822-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc" + +[[packages]] +name = "types-requests" +version = "2.32.0.20250328" + +[[packages.wheels]] +name = "types_requests-2.32.0.20250328-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cc/15/3700282a9d4ea3b37044264d3e4d1b1f0095a4ebf860a99914fd544e3be3/types_requests-2.32.0.20250328-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2" + +[[packages]] +name = "typing-extensions" +version = "4.15.0" + +[[packages.wheels]] +name = "typing_extensions-4.15.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" + +[[packages]] +name = "typing-inspection" +version = "0.4.2" + +[[packages.wheels]] +name = "typing_inspection-0.4.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7" + +[[packages]] +name = "tzdata" +version = "2025.2" + +[[packages.wheels]] +name = "tzdata-2025.2-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8" + +[[packages]] +name = "tzlocal" +version = "5.3.1" + +[[packages.wheels]] +name = "tzlocal-5.3.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/c2/14/e2a54fabd4f08cd7af1c07030603c3356b74da07f7cc056e600436edfa17/tzlocal-5.3.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d" + +[[packages]] +name = "ujson" +version = "5.11.0" + +[[packages.wheels]] +name = "ujson-5.11.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/4e/56/f4fe86b4c9000affd63e9219e59b222dc48b01c534533093e798bf617a7e/ujson-5.11.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629" + +[[packages]] +name = "umap-learn" +version = "0.5.9.post2" + +[[packages.wheels]] +name = "umap_learn-0.5.9.post2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/6b/b1/c24deeda9baf1fd491aaad941ed89e0fed6c583a117fd7b79e0a33a1e6c0/umap_learn-0.5.9.post2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0" + +[[packages]] +name = "uncertainties" +version = "3.2.3" + +[[packages.wheels]] +name = "uncertainties-3.2.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8f/5e/f1e1dd319e35e962a4e00b33150a8868b6329cc1d19fd533436ba5488f09/uncertainties-3.2.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a" + +[[packages]] +name = "uri-template" +version = "1.3.0" + +[[packages.wheels]] +name = "uri_template-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363" + +[[packages]] +name = "urllib3" +version = "2.5.0" + +[[packages.wheels]] +name = "urllib3-2.5.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc" + +[[packages]] +name = "uuid-utils" +version = "0.12.0" + +[[packages.wheels]] +name = "uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/38/92/41c8734dd97213ee1d5ae435cf4499705dc4f2751e3b957fd12376f61784/uuid_utils-0.12.0-cp39-abi3-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a" + +[[packages]] +name = "uvicorn" +version = "0.38.0" + +[[packages.wheels]] +name = "uvicorn-0.38.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ee/d9/d88e73ca598f4f6ff671fb5fde8a32925c2e08a637303a1d12883c7305fa/uvicorn-0.38.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02" + +[[packages]] +name = "vega-datasets" +version = "0.9.0" + +[[packages.wheels]] +name = "vega_datasets-0.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/e6/9f/ca52771fe972e0dcc5167fedb609940e01516066938ff2ee28b273ae4f29/vega_datasets-0.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d" + +[[packages]] +name = "waitress" +version = "3.0.2" + +[[packages.wheels]] +name = "waitress-3.0.2-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8d/57/a27182528c90ef38d82b636a11f606b0cbb0e17588ed205435f8affe3368/waitress-3.0.2-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e" + +[[packages]] +name = "watchdog" +version = "6.0.0" + +[[packages.wheels]] +name = "watchdog-6.0.0-py3-none-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680" + +[[packages]] +name = "wcwidth" +version = "0.2.13" + +[[packages.wheels]] +name = "wcwidth-0.2.13-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859" + +[[packages]] +name = "webcolors" +version = "24.11.1" + +[[packages.wheels]] +name = "webcolors-24.11.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9" + +[[packages]] +name = "webencodings" +version = "0.5.1" + +[[packages.wheels]] +name = "webencodings-0.5.1-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78" + +[[packages]] +name = "websocket-client" +version = "1.9.0" + +[[packages.wheels]] +name = "websocket_client-1.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef" + +[[packages]] +name = "websockets" +version = "15.0.1" + +[[packages.wheels]] +name = "websockets-15.0.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f" + +[[packages]] +name = "werkzeug" +version = "3.1.3" + +[[packages.wheels]] +name = "werkzeug-3.1.3-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e" + +[[packages]] +name = "whatthepatch" +version = "1.0.7" + +[[packages.wheels]] +name = "whatthepatch-1.0.7-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/8e/93/af1d6ccb69ab6b5a00e03fa0cefa563f9862412667776ea15dd4eece3a90/whatthepatch-1.0.7-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "widgetsnbextension" +version = "4.0.14" + +[[packages.wheels]] +name = "widgetsnbextension-4.0.14-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ca/51/5447876806d1088a0f8f71e16542bf350918128d0a69437df26047c8e46f/widgetsnbextension-4.0.14-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575" + +[[packages]] +name = "wrapt" +version = "2.0.1" + +[[packages.wheels]] +name = "wrapt-2.0.1-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/1a/38/5359da9af7d64554be63e9046164bd4d8ff289a2dd365677d25ba3342c08/wrapt-2.0.1-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c" + +[[packages]] +name = "wsproto" +version = "1.2.0" + +[[packages.wheels]] +name = "wsproto-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/78/58/e860788190eba3bcce367f74d29c4675466ce8dddfba85f7827588416f01/wsproto-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736" + +[[packages]] +name = "xarray" +version = "2025.11.0" + +[[packages.wheels]] +name = "xarray-2025.11.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/86/b4/cfa7aa56807dd2d9db0576c3440b3acd51bae6207338ec5610d4878e5c9b/xarray-2025.11.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1" + +[[packages]] +name = "xlsxwriter" +version = "3.2.9" + +[[packages.wheels]] +name = "xlsxwriter-3.2.9-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/3a/0c/3662f4a66880196a590b202f0db82d919dd2f89e99a27fadef91c4a33d41/xlsxwriter-3.2.9-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3" + +[[packages]] +name = "xxhash" +version = "3.6.0" + +[[packages.wheels]] +name = "xxhash-3.6.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/02/5d/a19552fbc6ad4cb54ff953c3908bbc095f4a921bc569433d791f755186f1/xxhash-3.6.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad" + +[[packages]] +name = "xyzservices" +version = "2025.4.0" + +[[packages.wheels]] +name = "xyzservices-2025.4.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9" + +[[packages]] +name = "yapf" +version = "0.43.0" + +[[packages.wheels]] +name = "yapf-0.43.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/37/81/6acd6601f61e31cfb8729d3da6d5df966f80f374b78eff83760714487338/yapf-0.43.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca" + +[[packages]] +name = "yarl" +version = "1.22.0" + +[[packages.wheels]] +name = "yarl-1.22.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79" + +[[packages]] +name = "yt-dlp" +version = "2025.9.26" + +[[packages.wheels]] +name = "yt_dlp-2025.9.26-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/35/94/18210c5e6a9d7e622a3b3f4a73dde205f7adf0c46b42b27d0da8c6e5c872/yt_dlp-2025.9.26-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2" + +[[packages]] +name = "zipp" +version = "3.23.0" + +[[packages.wheels]] +name = "zipp-3.23.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e" + +[[packages]] +name = "zstandard" +version = "0.25.0" + +[[packages.wheels]] +name = "zstandard-0.25.0-cp314-cp314-win_amd64.whl" +url = "https://files.pythonhosted.org/packages/3a/43/241f9615bcf8ba8903b3f0432da069e857fc4fd1783bd26183db53c4804b/zstandard-0.25.0-cp314-cp314-win_amd64.whl" + +[packages.wheels.hashes] +sha256 = "c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2" diff --git a/winpython/portable/cycle_2025_05/pylock.64-3_15_0_0dot.toml b/winpython/portable/cycle_2025_05/pylock.64-3_15_0_0dot.toml new file mode 100644 index 00000000..809332c5 --- /dev/null +++ b/winpython/portable/cycle_2025_05/pylock.64-3_15_0_0dot.toml @@ -0,0 +1,101 @@ +lock-version = "1.0" +created-by = "pip" + +[[packages]] +name = "build" +version = "1.3.0" + +[[packages.wheels]] +name = "build-1.3.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/cb/8c/2b30c12155ad8de0cf641d76a8b396a16d2c36bc6d50b621a62b7c4567c1/build-1.3.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4" + +[[packages]] +name = "colorama" +version = "0.4.6" + +[[packages.wheels]] +name = "colorama-0.4.6-py2.py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + +[[packages]] +name = "packaging" +version = "25.0" + +[[packages.wheels]] +name = "packaging-25.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484" + +[[packages]] +name = "pyproject-hooks" +version = "1.2.0" + +[[packages.wheels]] +name = "pyproject_hooks-1.2.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913" + +[[packages]] +name = "setuptools" +version = "80.9.0" + +[[packages.wheels]] +name = "setuptools-80.9.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922" + +[[packages]] +name = "sqlite-bro" +version = "0.13.1" + +[[packages.wheels]] +name = "sqlite_bro-0.13.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/2a/b3/81b91f5b26fff329c59dbf826a87637bd51d1903120427912322f86e7d33/sqlite_bro-0.13.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d" + +[[packages]] +name = "sv-ttk" +version = "2.6.0" + +[[packages.wheels]] +name = "sv_ttk-2.6.0-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0f/3d/be0abc3202e90f282ad465f4e7c6e41bc8dce810ce5d1611566a1e7dfba8/sv_ttk-2.6.0-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9" + +[[packages]] +name = "wheel" +version = "0.45.1" + +[[packages.wheels]] +name = "wheel-0.45.1-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248" + +[[packages]] +name = "wppm" +version = "17.2.20250823" + +[[packages.wheels]] +name = "wppm-17.2.20250823-py3-none-any.whl" +url = "https://files.pythonhosted.org/packages/ae/a9/2581cc7f91354eada41367bf68b91b1b7fba6cb6fb469f500dbaf6191539/wppm-17.2.20250823-py3-none-any.whl" + +[packages.wheels.hashes] +sha256 = "0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3" diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dot.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dot.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dot.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dotb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dotb4.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0dotb4.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slim.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slim.txt new file mode 100644 index 00000000..597ea1ba --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slim.txt @@ -0,0 +1,1064 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9 +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.10.0 \ + --hash=sha256:aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==4.0.2 \ + --hash=sha256:d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.1 \ + --hash=sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==6.2.2 \ + --hash=sha256:6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.3.1 \ + --hash=sha256:279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.4 \ + --hash=sha256:ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.3 \ + --hash=sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.1 \ + --hash=sha256:31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.13.0 \ + --hash=sha256:096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0 \ + --hash=sha256:67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.8 \ + --hash=sha256:e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9 +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.19.0 \ + --hash=sha256:cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.13.0 \ + --hash=sha256:9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.1 \ + --hash=sha256:f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +ormsgpack==1.12.0 \ + --hash=sha256:8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +plotpy==2.8.2 \ + --hash=sha256:636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.3 \ + --hash=sha256:99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.33.1 \ + --hash=sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.1 \ + --hash=sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==4.0.4 \ + --hash=sha256:63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.12.1 \ + --hash=sha256:207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.14.0 \ + --hash=sha256:a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0 \ + --hash=sha256:ac529eb9dbd5954f9aaa2e3fe9a3fd9661bfe24e134c688587d811a0233127f1 +scikit-learn==1.8.0 \ + --hash=sha256:2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271 +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.7.0 \ + --hash=sha256:0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.2 \ + --hash=sha256:f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.5.0 \ + --hash=sha256:ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233 +streamlit==1.52.2 \ + --hash=sha256:a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8 +streamlit-bokeh==3.8.1 \ + --hash=sha256:1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.4 \ + --hash=sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.20.1 \ + --hash=sha256:4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8 +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.15 \ + --hash=sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slimb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slimb4.txt new file mode 100644 index 00000000..b94927b3 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0slimb4.txt @@ -0,0 +1,1064 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9 +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.3 \ + --hash=sha256:4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0 \ + --hash=sha256:67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.8 \ + --hash=sha256:e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9 +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.19.0 \ + --hash=sha256:cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +ormsgpack==1.12.0 \ + --hash=sha256:8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +plotpy==2.8.2 \ + --hash=sha256:636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.2 \ + --hash=sha256:75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.33.1 \ + --hash=sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.12.1 \ + --hash=sha256:207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0rc1 \ + --hash=sha256:7a80ebd6b6ee3706f2f597d374c0850b4340f663c217b556319f9bcc4664fc37 +scikit-learn==1.8.0 \ + --hash=sha256:2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271 +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1 \ + --hash=sha256:3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233 +streamlit==1.52.1 \ + --hash=sha256:97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c +streamlit-bokeh==3.8.1 \ + --hash=sha256:1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.3 \ + --hash=sha256:ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl_wheels.txt new file mode 100644 index 00000000..0a0f92a6 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whl_wheels.txt @@ -0,0 +1,1024 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9 +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.10.0 \ + --hash=sha256:aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==4.0.2 \ + --hash=sha256:d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.1 \ + --hash=sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==6.2.2 \ + --hash=sha256:6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.3.1 \ + --hash=sha256:279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.4 \ + --hash=sha256:ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.3 \ + --hash=sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.1 \ + --hash=sha256:31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.13.0 \ + --hash=sha256:096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f +llvmlite==0.46.0 \ + --hash=sha256:67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.8 \ + --hash=sha256:e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9 +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +mypy==1.19.0 \ + --hash=sha256:cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.13.0 \ + --hash=sha256:9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.1 \ + --hash=sha256:f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +ormsgpack==1.12.0 \ + --hash=sha256:8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +plotpy==2.8.2 \ + --hash=sha256:636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.3 \ + --hash=sha256:99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.33.1 \ + --hash=sha256:d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.1 \ + --hash=sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==4.0.4 \ + --hash=sha256:63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.12.1 \ + --hash=sha256:207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.14.0 \ + --hash=sha256:a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0 \ + --hash=sha256:ac529eb9dbd5954f9aaa2e3fe9a3fd9661bfe24e134c688587d811a0233127f1 +scikit-learn==1.8.0 \ + --hash=sha256:2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271 +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.7.0 \ + --hash=sha256:0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.2 \ + --hash=sha256:f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.5.0 \ + --hash=sha256:ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233 +streamlit==1.52.2 \ + --hash=sha256:a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.4 \ + --hash=sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.20.1 \ + --hash=sha256:4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8 +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.15 \ + --hash=sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4_wheels.txt new file mode 100644 index 00000000..325066e0 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_11_0whlb4_wheels.txt @@ -0,0 +1,1026 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:21e0ab1adb0c804955279b0a919ba8dec5264db1e85e43a89af9fbbf8a8e52c9 +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:9aa1a8abf3d8bb53cc19cfaa21c004afad8d4ccb17513f8aa11a788d1f525abd +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:6db124f53a3edcb32b0a896ad3519e37477f7e67bf4811cb41ab60c1ef74e4c8 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:c53b47834ae41e8e4829171cc44fec0fdf125545a15f6da41776b926b9645a9a +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.3 \ + --hash=sha256:4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:778667b8688bbacba06739eb5b0b78d99d2c65a99262dac5ab25eba473b34d5f +llvmlite==0.46.0 \ + --hash=sha256:67438fd30e12349ebb054d86a5a1a57fd5e87d264d2451bcfafbbbaa25b82a35 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.8 \ + --hash=sha256:e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9 +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +mypy==1.19.0 \ + --hash=sha256:cabbee74f29aa9cd3b444ec2f1e4fa5a9d0d746ce7567a6a609e224429781f53 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:eb227b07c2ac37b09432a9bda5142047a2d1055646e089d4a240a2643e508102 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +ormsgpack==1.12.0 \ + --hash=sha256:8ed37f29772432048b58174e920a1d4c4cde0404a5d448d3d8bbcc95d86a6918 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +plotpy==2.8.2 \ + --hash=sha256:636ea8ce5ee4c81cfd40bc5da9e9a0cbb9a5152eb8051963b8dd3255d11137cf +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.2 \ + --hash=sha256:75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.33.1 \ + --hash=sha256:d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.12.1 \ + --hash=sha256:207bd60c7ffbcea84584596e3637653aa7095e9ee20fa408f90c7f9460392613 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0rc1 \ + --hash=sha256:7a80ebd6b6ee3706f2f597d374c0850b4340f663c217b556319f9bcc4664fc37 +scikit-learn==1.8.0 \ + --hash=sha256:2de443b9373b3b615aec1bb57f9baa6bb3a9bd093f1269ba95c17d870422b271 +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1 \ + --hash=sha256:3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:8021271a79f35b842c02a1794465a651a9d06ec2080f76ebc3b7adce77d08233 +streamlit==1.52.1 \ + --hash=sha256:97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.3 \ + --hash=sha256:ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:757320d45d2fbcce8f30c42a6b2f47862967aea7bf458b9625b4bbe7ee390392 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_7_1dotb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1dotb1.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1dotb1.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_7_1slimb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1slimb1.txt new file mode 100644 index 00000000..ef39bf7b --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1slimb1.txt @@ -0,0 +1,1032 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.0 \ + --hash=sha256:07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.21.0 \ + --hash=sha256:74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.10 \ + --hash=sha256:cf0a2906e254bb4825209a26e1957e6e0bacbbe61875bd22128dc3d5d51a7b0a +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.107.2 \ + --hash=sha256:d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.2 \ + --hash=sha256:12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.1 \ + --hash=sha256:c1e0f1fdfeba50702af95650c3b54bfaa68ebbff309147a2e1c25af8a67d9a2d +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_7_1whlb1_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1whlb1_wheels.txt new file mode 100644 index 00000000..19e50c4b --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_7_1whlb1_wheels.txt @@ -0,0 +1,998 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.0 \ + --hash=sha256:07fcc612ea5f0fe6032b92bcc93693034eb00e7a23eb9146576911d5326af4f7 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.7 \ + --hash=sha256:3698ee7eaa0b047a7603517d7aa1b71b32118a5f51754cab45ec5d994f67208f +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.10 \ + --hash=sha256:cf0a2906e254bb4825209a26e1957e6e0bacbbe61875bd22128dc3d5d51a7b0a +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==1.107.2 \ + --hash=sha256:d159d4f3ee3d9c717b248c5d69fe93d7773a80563c8b1ca8e9cad789d3cf0260 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.2 \ + --hash=sha256:12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.2 \ + --hash=sha256:436c771ede71af4d4c22ba867a30add0bc5c942d7ab27fadbb6934a487ecc8f6 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydantic==2.11.7 \ + --hash=sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.5 \ + --hash=sha256:be5a9d2e1ba22aaa02eb397c5b3b5e4e1d9ed2c08f45554d8b920d8fc3be6dc7 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.0.0 \ + --hash=sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0 +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb1.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb1.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb2.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb2.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb3.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0dotb3.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb1.txt new file mode 100644 index 00000000..fd3f5f5e --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb1.txt @@ -0,0 +1,1036 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.1 \ + --hash=sha256:280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.21.0 \ + --hash=sha256:74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==2.3.0 \ + --hash=sha256:a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.2 \ + --hash=sha256:e9cb26baca4263bf32432328fa6a37b2b09922af99a1a009abe1f12287f39836 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pipdeptree==2.29.0 \ + --hash=sha256:74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.9 \ + --hash=sha256:c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb2.txt new file mode 100644 index 00000000..2ed00daa --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb2.txt @@ -0,0 +1,1036 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.12.15 \ + --hash=sha256:1a649001580bdb37c6fdb1bebbd7e3bc688e8ec2b5c6f52edbb664662b17dc84 +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.1 \ + --hash=sha256:280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +holoviews==1.21.0 \ + --hash=sha256:74f3c01f35b9e8e2a8d6eb457a7ef05727de2a2a56509d59d7dc0d0409bc91c0 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==3.0.0 \ + --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdit-py-plugins==0.4.2 \ + --hash=sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.2.0 \ + --hash=sha256:6557942f6c6be3b41d2965456b53a244a7ce3e6fb81cb195c243549be72a6a24 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.8.0 \ + --hash=sha256:6304856676ba4a79fd34148bda63aed8060dd6edb1227edf3659ce5e091de73c +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==2.3.0 \ + --hash=sha256:a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.2 \ + --hash=sha256:e9cb26baca4263bf32432328fa6a37b2b09922af99a1a009abe1f12287f39836 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pipdeptree==2.29.0 \ + --hash=sha256:74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.11.9 \ + --hash=sha256:c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb3.txt new file mode 100644 index 00000000..f9052428 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0slimb3.txt @@ -0,0 +1,1046 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.72.0 \ + --hash=sha256:0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxopt==1.3.2 \ + --hash=sha256:0a0987966009ad383de0918e61255d34ed9ebc783565bcb15470d4155010b6bf +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.1 \ + --hash=sha256:1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453 +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.2 \ + --hash=sha256:2f7c61617d2b1da3da5d7e215be616ad45aa3221c4b9e2c4d1c28ed09bc3c1c4 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.11.0 \ + --hash=sha256:1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.121.3 \ + --hash=sha256:0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.59.2 \ + --hash=sha256:a72155928d7053bbde499d32a9c77d3f0f3d29ae72b5a121752481bcbd71e50f +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.50.1 \ + --hash=sha256:15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.34.1 \ + --hash=sha256:863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25 +guidata==3.13.1 \ + --hash=sha256:85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.0 \ + --hash=sha256:452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.1.4 \ + --hash=sha256:867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.7.0 \ + --hash=sha256:bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.44 \ + --hash=sha256:c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0rc1 \ + --hash=sha256:0d3782624374ec98d30d6e89c078c7571d3022d89cbb2703038b409604c7a8a8 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +magika==0.6.2 \ + --hash=sha256:711f427a633e0182737dcc2074748004842f870643585813503ff2553b973b9f +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markitdown==0.1.2 \ + --hash=sha256:4881f0768794ffccb52d09dd86498813a6896ba9639b4fc15512817f56ed9d74 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.7 \ + --hash=sha256:744991e0cc863dd669c8dc9136ca4e6e0082be2070b9d793cbd64bec872a6815 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.18.2 \ + --hash=sha256:0e2785a84b34a72ba55fb5daf079a1003a34c05b22238da94fcae2bbe46f3544 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:edd47048eb65c196b28aa9d2c0c6a017d8ca084a9a7041cd317301c829eb5a05 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0rc1 \ + --hash=sha256:59182b5a8c5a6feadbfc24626a78aaa09c1ec8a2a63561ea3fdc683eaa25dee1 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.8.1 \ + --hash=sha256:c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.3 \ + --hash=sha256:0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.35.2 \ + --hash=sha256:5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e +polars-runtime-32==1.35.2 \ + --hash=sha256:ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.4 \ + --hash=sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.6 \ + --hash=sha256:390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1rc1 \ + --hash=sha256:2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:c1c80faaee1a6c3428cecf40d16a2365bcf56c424c92c2b6f0f9ad204b899e9e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.51.0 \ + --hash=sha256:4008b029f71401ce54946bb09a6a3e36f4f7652cbb48db701224557738cfda38 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb1_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb1_wheels.txt new file mode 100644 index 00000000..68bbe78e --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb1_wheels.txt @@ -0,0 +1,1002 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.11.18 \ + --hash=sha256:bdd619c27e44382cf642223f11cfd4d795161362a5a1fc1fa3940397bc89db01 +aiosignal==1.3.2 \ + --hash=sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.10.0 \ + --hash=sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.3.0 \ + --hash=sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.13.4 \ + --hash=sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.4.26 \ + --hash=sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.2 \ + --hash=sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980 +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.2 \ + --hash=sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.14 \ + --hash=sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.1 \ + --hash=sha256:280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.0 \ + --hash=sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.1 \ + --hash=sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.10 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.0 \ + --hash=sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.4.1 \ + --hash=sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.8.1 \ + --hash=sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.2 \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.3 \ + --hash=sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9 +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.5.0 \ + --hash=sha256:7e213f9ca7db3f8bf6f7eff35eaee6a1cf80902997e1b78d49b7755775d8f423 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==2.3.0 \ + --hash=sha256:a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +pipdeptree==2.29.0 \ + --hash=sha256:74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1 +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.0.0 \ + --hash=sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydantic==2.11.9 \ + --hash=sha256:c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.3 \ + --hash=sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.2 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.36.2 \ + --hash=sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.26.0 \ + --hash=sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20240316 \ + --hash=sha256:6b8cb66d960771ce5ff974e9dd45e38facb81718cc1e208b10b1baccbfdbee3b +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.13.2 \ + --hash=sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.8.0 \ + --hash=sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526 +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2_wheels.txt new file mode 100644 index 00000000..4775a549 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb2_wheels.txt @@ -0,0 +1,1002 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.12.15 \ + --hash=sha256:1a649001580bdb37c6fdb1bebbd7e3bc688e8ec2b5c6f52edbb664662b17dc84 +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.64.0 \ + --hash=sha256:6f5f7d913a6a95eb7f8e1bda4e75f76670e8acd8d4cd965e02e2a256b0429dd1 +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.18 \ + --hash=sha256:944b82ef1dd17b8ff0fb6d1f199f613caf9111338e6e2857da478f6e73770cb8 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.2 \ + --hash=sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.0 \ + --hash=sha256:8e317f34e33a8f5517bc9fc6fbc005f42730d3be7d2820ef41e0468bcb796843 +astropy-iers-data==0.2025.6.9.0.39.3 \ + --hash=sha256:76855f5572707b8d25f77a0ede2b330b7ef9863bc963e3eda86321e4e32df802 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.34.0 \ + --hash=sha256:0615d3b756beccdb6624d1c0ae97284f38b78fb59a2a9839bf927c66fbbdddd6 +azure-cosmos==4.9.0 \ + --hash=sha256:3b60eaa01a16a857d0faf0cec304bac6fa8620a81bc268ce760339032ef617fe +azure-identity==1.23.0 \ + --hash=sha256:dbbeb64b8e5eaa81c44c565f264b519ff2de7ff0e02271c49f3cb492762a50b0 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.9.0 \ + --hash=sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.0 \ + --hash=sha256:117c5e559231ad39fef87891a1a1b62b3bfefbaa47d536023537338f46015841 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.1.0 \ + --hash=sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +cohere==5.18.0 \ + --hash=sha256:885e7be360206418db39425faa60dbcd7f38e39e7f84b824ee68442e6a436e93 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:f2ee2bb77943044f301cec04d0b51d8e3810507c9c250d6cd079a3e2d6ba88f2 +cytoolz==1.0.1 \ + --hash=sha256:90e577e08d3a4308186d9e1ec06876d4756b1e8164b92971c69739ea17e15297 +dask==2025.7.0 \ + --hash=sha256:073c29c4e99c2400a39a8a67874f35c1d15bf7af9ae3d0c30af3c7c1199f24ae +datasette==0.65.1 \ + --hash=sha256:ba7adf717ddcc24a2a8ac57890fffd384a2ebb909b342e4f731ba09eba764305 +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.7.0 \ + --hash=sha256:51b74526c2bee409ca968ee5532c79de1c1a1713664f5ccf90bdd81f17cfdc73 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.1 \ + --hash=sha256:280fd663dacdd12bb3c3bf41f3e5b2e5b95e00b88120afabb8b8befa5f335c6f +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.4.0 \ + --hash=sha256:cb81c09ebe06c32a10971d1bbdb264bb0e22b59af59548f011ac4809556ce533 +fasta2a==0.2.9 \ + --hash=sha256:8b855b36f29fde6dcb79ad55be337a8165381b679bec829913009c55581e284e +fastapi==0.118.0 \ + --hash=sha256:705137a61e2ef71019d2445b123aa8845bd97273c395b744d5a7dfe559056855 +fastavro==1.11.1 \ + --hash=sha256:cde7ed91b52ff21f0f9f157329760ba7251508ca3e9618af3ffdac986d9faaa2 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.58.5 \ + --hash=sha256:bca61b14031a4b7dc87e14bf6ca34c275f8e4b9f7a37bc2fe746b532a924cf30 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.7.0 \ + --hash=sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.40.3 \ + --hash=sha256:1370d4593e86213563547f97a92752fc658456fe4514c809544f330fed45a7ca +google-genai==1.31.0 \ + --hash=sha256:5c6959bcf862714e8ed0922db3aaf41885bacf6318751b3421bf1e459f78892f +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.3 \ + --hash=sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.31.0 \ + --hash=sha256:5e3c7ec9728b7cccf913da982a9b5ebb46dc18a070b35e12a3d6a1e12d6b0f7f +guidata==3.12.0 \ + --hash=sha256:8cc05220126dfdd562281de9e761b0c279a4112d699bff55d4b17d95d7bfa1d1 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.12.1 \ + --hash=sha256:52ab036c6c97055b85b2a242cb540ff9590bacfda0c03dd0cf0661b311f522f8 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==0.35.3 \ + --hash=sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.0 \ + --hash=sha256:6ea924cc53d4f78e3d98bc436b08069a03077e6f85ad1ddaa8a116d7dad15820 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.0 \ + --hash=sha256:c8089e918ddb1abae946e92d053f646a7f686d0d051ef69cdfaa28b37352bbdf +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.0 \ + --hash=sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.11.3 \ + --hash=sha256:f484f050e05ee400455b05ec8c36ed35edc34de94256b6073f56cfe68f65491f +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.32 \ + --hash=sha256:5c4dcaa5049360bd126fec2fd59af703294e08c75c8d5363261f71a941fa2963 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.45.1 \ + --hash=sha256:080e6f8d0778a8239cd47686d402cb66eb165e421efa9391366a9b7e5810a38b +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==3.12.0 \ + --hash=sha256:fc092c2dcb24c8462ba776f3b0c2183f82e1cd55f86e29b38cf21a048e66a17d +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.0 \ + --hash=sha256:2f34687222b78fff795feeb799a7d44eca2477c3d9d3a46ce17d51a4f383e32e +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.6 \ + --hash=sha256:1b53bd6337eba483e2e7d29c5ab10eee644bc3a2491ec67cc55f7b44583ffb18 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +maturin==1.9.4 \ + --hash=sha256:8e450bb2c9afdf38a0059ee2e1ec2b17323f152b59c16f33eb9c74edaf1f9f79 +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.11.0 \ + --hash=sha256:58deac37f7483e4b338524b98bc949b7c2b7c33d978f5fafab5bde041c5e2595 +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.1 \ + --hash=sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.10 \ + --hash=sha256:80877acce87ea447380fad7374668737505c8c0684aab05238e7c5dc1fab38c1 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.6.4 \ + --hash=sha256:40cd05eaeb39e2bc8939451f033e57feaa2ac99e07dbca8afe2be450a4a3b6cf +mypy==1.17.1 \ + --hash=sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.8.0 \ + --hash=sha256:6304856676ba4a79fd34148bda63aed8060dd6edb1227edf3659ce5e091de73c +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.2.21 \ + --hash=sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.4.5 \ + --hash=sha256:351635461aca9dad08cf8946a4216f963e2760cc1bf7b1aaaecb23afc33ec046 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.62.1 \ + --hash=sha256:bbf3f88b461514287df66bc8d0307e949b09f2b6f67da92265094e8fa1282dd8 +numpy==2.3.3 \ + --hash=sha256:f0dadeb302887f07431910f67a14d57209ed91130be0adea2f9793f1a4f817cf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.22.1 \ + --hash=sha256:70980d729145a36a05f74b573435531f55ef9503bcda81fc6c3d6b9306199982 +openai==2.3.0 \ + --hash=sha256:a7aa83be6f7b0ab2e4d4d7bcaf36e3d790874c0167380c5d0afd0ed99a86bd7b +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.14.1 \ + --hash=sha256:25ea23fc6d6c0fa7dcf85afcfe10b43ed4fdf0e9d958a3677cd27fcdf0ca17d6 +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.10.18 \ + --hash=sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52 +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==11.3.0 \ + --hash=sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51 +pip==25.2 \ + --hash=sha256:6d67a2b4e7f14d8b31b8b52648866fa717f45a1eb70e83002f4331d07e953717 +pipdeptree==2.29.0 \ + --hash=sha256:74889622db9d7fb9acd45aacdfec42baa29e0d3ebc806d4315812bacdf44e9e1 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.3.0 \ + --hash=sha256:7ad806edce9d3cdd882eaebaf97c0c9e252043ed1ed3d382c3e3520ec07806d4 +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.34.0 \ + --hash=sha256:40d2f357b4d9e447ad28bd2c9923e4318791a7c18eb68f31f1fbf11180f41391 +polars-runtime-32==1.34.0 \ + --hash=sha256:2501d6b29d9001ea5ea2fd9b598787e10ddf45d8c4a87c2bead75159e8a15711 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.3.1 \ + --hash=sha256:813fbb8b6aea2fc9659815e585e548fe706d6f663fa73dff59a1677d4595a037 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.14.0 \ + --hash=sha256:b9a102e4e2a531a7646f3aecee747b6181355272700340827fc86ee4f5028a29 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.11.9 \ + --hash=sha256:c42dd626f5cfc1c6950ce6205ea58c93efa406da65f479dcb4029d5934857da2 +pydantic-ai-slim==0.2.9 \ + --hash=sha256:d954ff84cb250d7150a7ed694e4f1f92f820205d036ee006d02fce3e62a3bc4e +pydantic-core==2.33.2 \ + --hash=sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9 +pydantic-evals==0.2.9 \ + --hash=sha256:62035ae3a5321e4d892c7372ef91af0f46b675863e827f011d5cb8550dede400 +pydantic-graph==0.2.9 \ + --hash=sha256:38ad929a0ec205bd7d5875b0b408d4f13448276aa89b6ce2a1143a7552b070ce +pydantic-settings==2.8.1 \ + --hash=sha256:81942d5ac3d905f7f3ee1a70df5dfb62d5569c12f51a5a647defc1c3d9ee2e9c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.12.1 \ + --hash=sha256:3b28ecd1305b89089be14f137ffbdf98a3b9f5c8dbbb2be4dec084f2813fbd5f +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.2.0 \ + --hash=sha256:96d3127f28c0dacf18da7ae009cd48eac532d3dcc718a334b86a3c65f6a5ef5c +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.2 \ + --hash=sha256:13ebb2f974f97afa626c2712d4f27e09a1c3d18ca11755676b743504a76e5161 +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyproj==3.7.0 \ + --hash=sha256:10a8dc6ec61af97c89ff032647d743f8dc023645773da42ef43f7ae1125b3509 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.0 \ + --hash=sha256:672c209d05661fab8e17607c193bf43991d268a1eefbc2c4551fbf30fd8bb2ca +pyqtgraph==0.13.7 \ + --hash=sha256:7754edbefb6c367fa0dfb176e2d0610da3ada20aa7a5318516c74af5fb72bf7a +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.15.1 \ + --hash=sha256:057636fba37369c22852410c8535b36adfbeb965ddfd4e5b6924455d692e0886 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.1.10 \ + --hash=sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.8.0 \ + --hash=sha256:4dbebcfd55ea8a85b7fc8802d411e75337170422abf6e96019d7e46c394e80e5 +pywin32==310 \ + --hash=sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.13.0 \ + --hash=sha256:9a7c6232be5f809cd39da30ee5d24e6cadd919831e6020ec6c2391f4c3bc9264 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.7.34 \ + --hash=sha256:9d644de5520441e5f7e2db63aec2748948cc39ed4d7a87fd5db578ea4043d997 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.2 \ + --hash=sha256:fda714cf45ba43c9d3bae8f2585c777f64e3f89a2e073b668b32ede412d8f52c +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.8 \ + --hash=sha256:927a5300d8ef991a42def688e6920c8e6b09c9e74a9436835e07fa647087cc1b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.1 \ + --hash=sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.1 \ + --hash=sha256:1b9fd15853b90aec3b1739f4471efbf1ac05066a2c7041bf8db821bb73cd2ddc +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.1 \ + --hash=sha256:4313b63f2076552b23ac3e0abd3bcfc0c1c6a696fc356759a13bd113c9df90f1 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlalchemy==2.0.41 \ + --hash=sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.2.0 \ + --hash=sha256:c39a698491f43618efca8776a40fb7201d08c415c507f899f0df5ada15abefaa +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.49.1 \ + --hash=sha256:ad7b6d0dc35db168587acf96f80378249467fc057ed739a41c511f6bf5aa173b +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.11.0 \ + --hash=sha256:2177ffda31dec4023356a441793fed82f7af5291120751dee4d696414f54db0c +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.21.4 \ + --hash=sha256:475d807a5c3eb72c59ad9b5fcdb254f6e17f53dfcbb9903233b0dfa9c943b597 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli==2.2.1 \ + --hash=sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.0 \ + --hash=sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.10.0 \ + --hash=sha256:4573fd1695932d4f619928fd09d5d03d917274381649ade4328091ceca175539 +umap-learn==0.5.7 \ + --hash=sha256:6a7e0be2facfa365a5ed6588447102bdbef32a0ef449535c25c97ea7e680073c +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.35.0 \ + --hash=sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==1.17.2 \ + --hash=sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.9.0 \ + --hash=sha256:79f0e25fb39571f612526ee998ee5404d8725a1db3951aabffdb287388885df0 +xlsxwriter==3.2.5 \ + --hash=sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.20.1 \ + --hash=sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c +yt-dlp==2025.7.21 \ + --hash=sha256:d7aa2b53f9b2f35453346360f41811a0dad1e956e70b35a4ae95039d4d815d15 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3_wheels.txt new file mode 100644 index 00000000..bc32efdf --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_13_8_0whlb3_wheels.txt @@ -0,0 +1,1012 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.6.0 \ + --hash=sha256:0e8ffb182fafe1e6ae12964a833700daacc55f7abfdc2ada8b5214b18108d87b +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:ef56ffe60e8d97baac123272bde1ab889ee07d3419606fae823c80c2b86c403e +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.72.0 \ + --hash=sha256:0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +appdirs==1.4.4 \ + --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:0a3d70df518cb7f400f4ec496b2cbba887c0a0c596fbb15e9bda4fcba07c3f59 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:b63daa43d82f0cdabf98dee215b375b4058cce72871fd07934f179885aad16e8 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263 +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cvxpy==1.7.1 \ + --hash=sha256:10c4757b858a9e903007bcd29f22cd1f9d6c1259a882f254235d15c867b63a37 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.1 \ + --hash=sha256:1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453 +cytoolz==1.1.0 \ + --hash=sha256:9e2d3fe3b45c3eb7233746f7aca37789be3dceec3e07dcc406d3e045ea0f7bdc +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +deap==1.4.2 \ + --hash=sha256:1abab976c75b0f18c36e81f968fcc77fac69fc9bedbab8be3323ca376f6fcfa4 +debugpy==1.8.17 \ + --hash=sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420 +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.2 \ + --hash=sha256:2f7c61617d2b1da3da5d7e215be616ad45aa3221c4b9e2c4d1c28ed09bc3c1c4 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.11.0 \ + --hash=sha256:1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.121.3 \ + --hash=sha256:0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9 +fastavro==1.12.1 \ + --hash=sha256:5aa777b8ee595b50aa084104cd70670bf25a7bbb9fd8bb5d07524b0785ee1699 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.59.2 \ + --hash=sha256:a72155928d7053bbde499d32a9c77d3f0f3d29ae72b5a121752481bcbd71e50f +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.50.1 \ + --hash=sha256:15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.34.1 \ + --hash=sha256:863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25 +guidata==3.13.1 \ + --hash=sha256:85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.1.4 \ + --hash=sha256:867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.7.0 \ + --hash=sha256:bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9c747ae5c0fb4bd519f6abbfe4bd704b2f1c63fd4dd3dbb8d8864478974e1571 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.44 \ + --hash=sha256:c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +llvmlite==0.46.0rc1 \ + --hash=sha256:0d3782624374ec98d30d6e89c078c7571d3022d89cbb2703038b409604c7a8a8 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 +matplotlib==3.10.7 \ + --hash=sha256:744991e0cc863dd669c8dc9136ca4e6e0082be2070b9d793cbd64bec872a6815 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.3 \ + --hash=sha256:d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4 +mlxtend==0.23.3 \ + --hash=sha256:f9fec721c4121be87dac00e513456dde5bf56b7427750719c0a291cd58b6538e +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.0 \ + --hash=sha256:bce7d9e614a04d0883af0b3d4d501171fbfca038f12c77fa838d9f198147a23f +multidict==6.7.0 \ + --hash=sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390 +mypy==1.18.2 \ + --hash=sha256:0e2785a84b34a72ba55fb5daf079a1003a34c05b22238da94fcae2bbe46f3544 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0rc1 \ + --hash=sha256:59182b5a8c5a6feadbfc24626a78aaa09c1ec8a2a63561ea3fdc683eaa25dee1 +numpy==2.3.5 \ + --hash=sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +onnxruntime==1.23.2 \ + --hash=sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088 +openai==2.8.1 \ + --hash=sha256:c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:057f95213e403ff3a975f287aef6b687299d0c4512d211de24b1b98050cd4fbf +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:09bf242a4af98732db9f9a1ec57ca2604848e16f132e3f72edfd3c5c96de009a +osqp==0.6.7.post3 \ + --hash=sha256:acb219e941f5248da5de3ee9b70e6a5aaddf5f3989dffd1d4c03b0f7b1dfa17b +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:4cf7fed4b4580601c4345ceb5d4cbf5a980d030fd5ad07c4d2ec589f95f09905 +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +plotpy==2.7.5 \ + --hash=sha256:4ba5665c03cb734728e7ae9063e1699a980de549b48646791be36f29d5fdbb86 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.35.2 \ + --hash=sha256:5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e +polars-runtime-32==1.35.2 \ + --hash=sha256:ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.0 \ + --hash=sha256:7e21a78d4dd06ca3ec526ee714a50b349f26de3fca6b79664150a951b31688f3 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:8dc379166b5b7d5ea66dcebf433011dfc51a7bb8a5fc12367fa05668e5fc53c8 +psygnal==0.15.0 \ + --hash=sha256:c60d36d46c992835608030ff3fa918c06c7f22133391d90500585fef726f5d07 +ptpython==3.0.31 \ + --hash=sha256:ddd25fadb6f2ecd4469a699c068d2dcd40d77c7105922569bba6dc79c0523458 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==21.0.0 \ + --hash=sha256:186aa00bca62139f75b7de8420f745f2af12941595bbbfa7ed3870ff63e25636 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.4 \ + --hash=sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11 +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:52f40c4b8c00bc53d4e357fe0de13d031c4cddb5d201e1a027db437e8d2887f8 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:01166162149adf2b8a6dc21a212718f205cabbbdff4047dc0c415af3fd85867e +pyogrio==0.10.0 \ + --hash=sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:d04e5551bbc3bcec98acc63b3b0618ddcbf31ff107349225b516fe7e7c0a7c8b +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:0d70da9d7858c869e24dc254f16a61dc09d8a224cad85a10c393b2eccddeb126 +pywin32==311 \ + --hash=sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51 +pyyaml==6.0.3 \ + --hash=sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qdldl==0.1.7.post5 \ + --hash=sha256:cc9be378e7bec67d4c62b7fa27cafb4f77d3e5e059d753c3dce0a5ae1ef5fea0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:e6b5e3036976f0fde888687d91be86d81f9ac5f7b02e218913c38285b756be6c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.6 \ + --hash=sha256:390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.25.2 \ + --hash=sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f +scikit-learn==1.7.2 \ + --hash=sha256:63a9afd6f7b229aad94618c01c252ce9e6fa97918c5ca19c9a17a087d819440c +scipy==1.16.3 \ + --hash=sha256:062246acacbe9f8210de8e751b16fc37458213f124bef161a5a02c7a39284304 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:6c75f835df827e8a9e1c19668fa4b21d4b7047017d19ceab4e98db2506acc466 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:a1a85013eb33e4820286139540accbe2c98d2da894b2dcefd280209db508e608 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1rc1 \ + --hash=sha256:2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:3d225c23375c5057c608ec0c117f973e333bf0fb6d4ff04909db62e6d62d4331 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939 +streamlit==1.51.0 \ + --hash=sha256:4008b029f71401ce54946bb09a6a3e36f4f7652cbb48db701224557738cfda38 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:34032aeca4510a7c7102bd5933f59a37f63891f30a0706fb46487ab6f0edf8f0 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561 +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wordcloud==1.9.4 \ + --hash=sha256:8c9a5af2fbcf029a19e827adbee58e86efe7536dca7a42380a8601113a86069b +wrapt==2.0.1 \ + --hash=sha256:9ca66b38dd642bf90c59b6738af8070747b610115a39af2498535f62b5cdc1c3 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:1f830a0dac88719af0ae43b8b2d6aef487d437036468ef3c2ea59c51f9d55fd5 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb1.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb1.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb2.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb2.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb3.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2dotb3.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb1.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb1.txt new file mode 100644 index 00000000..8f1d0eee --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb1.txt @@ -0,0 +1,18 @@ +build==1.2.2.post1 \ + --hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb2.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb2.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb3.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2freeb3.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb2.txt new file mode 100644 index 00000000..5e4a4a73 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb2.txt @@ -0,0 +1,438 @@ +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==24.10.0 \ + --hash=sha256:3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:acb99ddec62ba1ea5de0e0087760fa834ec42c94f0488065a4f1995584e8e94e +debugpy==1.8.17 \ + --hash=sha256:893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +fonttools==4.59.2 \ + --hash=sha256:9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +llvmlite==0.46.0b1 \ + --hash=sha256:44dbad743b6e41e413085e7b56b82272f51d4994ba36c3633c8b8eb632db6990 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.6 \ + --hash=sha256:05be9bdaa8b242bc6ff96330d18c52f1fc59c6fb3a4dd411d953d67e7e1baf98 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0b1 \ + --hash=sha256:a54b9c32a4d4b652df57d539ecf1cd8e5f860b40655fd36b6f8d391e95a7ae41 +numpy==2.3.3 \ + --hash=sha256:691808c2b26b0f002a032c73255d0bd89751425f379f7bcd22d140db593a96e8 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +scikit-learn==1.7.2 \ + --hash=sha256:bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8 +scipy==1.16.2 \ + --hash=sha256:f5a85d7b2b708025af08f060a496dd261055b617d776fc05a1a1cc69e09fe9ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb3.txt new file mode 100644 index 00000000..e7794e49 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimb3.txt @@ -0,0 +1,1004 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.72.0 \ + --hash=sha256:0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.1 \ + --hash=sha256:4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +debugpy==1.8.17 \ + --hash=sha256:893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.2 \ + --hash=sha256:dfcc56a83420c0dec0b83e97a6b33addac1b7554b8828894f9d203955591218c +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.11.0 \ + --hash=sha256:1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.121.3 \ + --hash=sha256:0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.59.2 \ + --hash=sha256:9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.50.1 \ + --hash=sha256:15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.34.1 \ + --hash=sha256:863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25 +guidata==3.13.1 \ + --hash=sha256:85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.0 \ + --hash=sha256:452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.1.4 \ + --hash=sha256:867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.7.0 \ + --hash=sha256:bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.44 \ + --hash=sha256:c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233 +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0rc1 \ + --hash=sha256:28a7586f1757ba38f1be9c87f0b11c31828dc8b08c72534ca8a9d190c1717a75 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.7 \ + --hash=sha256:4645fc5d9d20ffa3a39361fcdbcec731382763b623b72627806bf251b6388866 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.18.2 \ + --hash=sha256:749b5f83198f1ca64345603118a6f01a4e99ad4bf9d103ddc5a3200cc4614adf +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0rc1 \ + --hash=sha256:9cd09955580ca85443da7ba2791d2f0f1c5f191c52c3046fef6a60155e14c1b3 +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.8.1 \ + --hash=sha256:c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.3 \ + --hash=sha256:0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.35.2 \ + --hash=sha256:5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e +polars-runtime-32==1.35.2 \ + --hash=sha256:ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.4 \ + --hash=sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.6 \ + --hash=sha256:390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-learn==1.7.2 \ + --hash=sha256:bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1rc1 \ + --hash=sha256:2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:95af7a9c4689d514f4341478b891f867766f3da297f514b8c4adf08f4fa61d03 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb2.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb2.txt new file mode 100644 index 00000000..836dba57 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb2.txt @@ -0,0 +1,212 @@ +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6 +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 +charset-normalizer==3.4.3 \ + --hash=sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:d194d95e4fa029a3f6c7d46bdd16d973808c7ea4797586911fdb67cb98b1a2c6 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +fonttools==4.59.2 \ + --hash=sha256:7ad5d8d8cc9e43cb438b3eb4a0094dd6d4088daa767b0a24d52529361fd4c199 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +ipykernel==7.0.1 \ + --hash=sha256:87182a8305e28954b6721087dec45b171712610111d494c17bb607befa1c4000 +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +kiwisolver==1.4.9 \ + --hash=sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891 +markupsafe==3.0.3 \ + --hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 +matplotlib==3.10.6 \ + --hash=sha256:c7e0518e0d223683532a07f4b512e2e0729b62674f1b3a1a69869f98e6b1c7e3 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numpy==2.3.3 \ + --hash=sha256:b37a0b2e5935409daebe82c1e42274d30d9dd355852529eab91dab8dcca7419f +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +pillow==12.0.0 \ + --hash=sha256:905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +psutil==7.1.1 \ + --hash=sha256:092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +pywinpty==3.0.2 \ + --hash=sha256:34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767 +pyyaml==6.0.3 \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 +pyzmq==27.1.0 \ + --hash=sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rpds-py==0.27.1 \ + --hash=sha256:6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772 +scipy==1.16.2 \ + --hash=sha256:26284797e38b8a75e14ea6631d29bda11e76ceaa6ddb6fdebbfe4c4d90faf2f9 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tornado==6.5.2 \ + --hash=sha256:ab53c8f9a0fa351e2c0741284e06c7a45da86afb544133201c5cc8578eb076a0 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb3.txt new file mode 100644 index 00000000..ed1c3ee1 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2slimfb3.txt @@ -0,0 +1,756 @@ +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.72.0 \ + --hash=sha256:0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.3.2 \ + --hash=sha256:ce8ad498672c845a0c3de2629c15b635ec2b05ef8177a6e7c91c74f3e9b51128 +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +bcrypt==5.0.0 \ + --hash=sha256:92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.1 \ + --hash=sha256:cd72c46e7bffe8250c52d400e72c8d5d3086437b6aeec5b0eca99ccd337f5834 +cytoolz==1.1.0 \ + --hash=sha256:56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.11.0 \ + --hash=sha256:1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.121.3 \ + --hash=sha256:0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.2.0 \ + --hash=sha256:93b92ba5bdb60754a6da14fa3b93a9361fd00a59632ada61fd7b130436c40343 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.59.2 \ + --hash=sha256:7ad5d8d8cc9e43cb438b3eb4a0094dd6d4088daa767b0a24d52529361fd4c199 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.50.1 \ + --hash=sha256:15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.34.1 \ + --hash=sha256:863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hf-xet==1.2.0 \ + --hash=sha256:210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +huggingface-hub==1.1.4 \ + --hash=sha256:867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.7.0 \ + --hash=sha256:bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 +matplotlib==3.10.7 \ + --hash=sha256:f79d5de970fc90cd5591f60053aecfce1fcd736e0303d9f0bf86be649fa68fb8 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +multidict==6.7.0 \ + --hash=sha256:09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd +mypy==1.18.2 \ + --hash=sha256:22a1748707dd62b58d2ae53562ffc4d7f8bcc727e8ac7cbc69c053ddc874d47e +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.3.2 \ + --hash=sha256:dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numpy==2.3.5 \ + --hash=sha256:c8a9958e88b65c3b27e22ca2a076311636850b612d6bbfb76e8d156aacde2aaf +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.8.1 \ + --hash=sha256:c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1 +psutil==7.1.1 \ + --hash=sha256:092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc +psygnal==0.15.0 \ + --hash=sha256:023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pycodestyle==2.13.0 \ + --hash=sha256:35863c5974a271c7a726ed228a14a4f6daf49df369d8c50cd9a6f58a5e143ba9 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.4 \ + --hash=sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pyflakes==3.3.2 \ + --hash=sha256:5039c8339cbb1944045f4ee5466908906180f13cc99cc9949348d10f82a5c32a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95 +pynacl==1.6.1 \ + --hash=sha256:5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935 +pyodbc==5.3.0 \ + --hash=sha256:bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767 +pyyaml==6.0.3 \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 +pyzmq==27.1.0 \ + --hash=sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.6 \ + --hash=sha256:390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scipy==1.16.3 \ + --hash=sha256:d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tiktoken==0.12.0 \ + --hash=sha256:f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:ab53c8f9a0fa351e2c0741284e06c7a45da86afb544133201c5cc8578eb076a0 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yarl==1.22.0 \ + --hash=sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheels.txt new file mode 100644 index 00000000..f0ff4dcc --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheels.txt @@ -0,0 +1,436 @@ +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==24.10.0 \ + --hash=sha256:3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:d194d95e4fa029a3f6c7d46bdd16d973808c7ea4797586911fdb67cb98b1a2c6 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +fonttools==4.59.2 \ + --hash=sha256:9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +llvmlite==0.46.0b1 \ + --hash=sha256:44dbad743b6e41e413085e7b56b82272f51d4994ba36c3633c8b8eb632db6990 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.6 \ + --hash=sha256:05be9bdaa8b242bc6ff96330d18c52f1fc59c6fb3a4dd411d953d67e7e1baf98 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0b1 \ + --hash=sha256:a54b9c32a4d4b652df57d539ecf1cd8e5f860b40655fd36b6f8d391e95a7ae41 +numpy==2.3.3 \ + --hash=sha256:691808c2b26b0f002a032c73255d0bd89751425f379f7bcd22d140db593a96e8 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +psutil==7.1.0 \ + --hash=sha256:57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +scikit-learn==1.7.2 \ + --hash=sha256:bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8 +scipy==1.16.2 \ + --hash=sha256:f5a85d7b2b708025af08f060a496dd261055b617d776fc05a1a1cc69e09fe9ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheelslocal.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheelslocal.txt new file mode 100644 index 00000000..11b49e95 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb2_wheelslocal.txt @@ -0,0 +1,436 @@ +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +bcrypt==4.3.0 \ + --hash=sha256:e53e074b120f2877a35cc6c736b8eb161377caae8925c17688bd46ba56daaa5b +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==24.10.0 \ + --hash=sha256:3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.8.3 \ + --hash=sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5 +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +cloudpickle==3.1.1 \ + --hash=sha256:c8c5a44295039331ee9dad40ba100a9c7297b6f988e50e87ccdf3765a668350e +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==45.0.5 \ + --hash=sha256:b85980d1e345fe769cfc57c57db2b59cff5464ee0c045d52c0df087e926fbe63 +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.1.4 \ + --hash=sha256:d194d95e4fa029a3f6c7d46bdd16d973808c7ea4797586911fdb67cb98b1a2c6 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.2.18 \ + --hash=sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +fonttools==4.59.2 \ + --hash=sha256:9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +ipykernel==6.30.1 \ + --hash=sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4 +ipython==9.6.0 \ + --hash=sha256:5f77efafc886d2f023442479b8149e7d86547ad0a979e9da9f045d252f648196 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.4.9 \ + --hash=sha256:394c902827350c017430a8370b9f40c03c098773084bc53930145c146d3d2cb2 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.27.3 \ + --hash=sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +llvmlite==0.46.0b1 \ + --hash=sha256:44dbad743b6e41e413085e7b56b82272f51d4994ba36c3633c8b8eb632db6990 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.6 \ + --hash=sha256:05be9bdaa8b242bc6ff96330d18c52f1fc59c6fb3a4dd411d953d67e7e1baf98 +matplotlib-inline==0.1.7 \ + --hash=sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0b1 \ + --hash=sha256:a54b9c32a4d4b652df57d539ecf1cd8e5f860b40655fd36b6f8d391e95a7ae41 +numpy==2.3.3 \ + --hash=sha256:691808c2b26b0f002a032c73255d0bd89751425f379f7bcd22d140db593a96e8 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +platformdirs==4.3.7 \ + --hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +psutil==7.1.0 \ + --hash=sha256:57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.22 \ + --hash=sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.6 \ + --hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pynacl==1.5.0 \ + --hash=sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.1 \ + --hash=sha256:fadf45275d12a9d9a13e36717a8383cee8e7cffe8a30698d38bfb3fe71b5cdcd +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.13.0 \ + --hash=sha256:b435a0c0971244fdcd8741676a9fae697ae614c20cc36003678a7782f25c0d6c +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.13.2 \ + --hash=sha256:17d95fb32218357c89355f6f6f9a804133e404fc1f65694372e02a557edf8585 +scikit-learn==1.7.2 \ + --hash=sha256:bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8 +scipy==1.16.2 \ + --hash=sha256:f5a85d7b2b708025af08f060a496dd261055b617d776fc05a1a1cc69e09fe9ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.0 \ + --hash=sha256:2c09c2c47d82b19bc466fce899519e98e79468fe6ffcd07d80356eada9c43d4e +spyder-kernels==3.1.0 \ + --hash=sha256:d13c6eaf919f277fb5b0770a898ef1f0c93577fa0fb4ad4f52a788ee77b2eb41 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wrapt==1.16.0 \ + --hash=sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3_wheels.txt new file mode 100644 index 00000000..cad7a3ee --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_0_2whlb3_wheels.txt @@ -0,0 +1,1004 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.16.1 \ + --hash=sha256:0cdd48acada30d93aa1035767d67dff25702f8de74d7c3919f2e8492c8db2e67 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.72.0 \ + --hash=sha256:0e9f5a7582f038cab8efbb4c959e49ef654a56bfc7ba2da51b5a7b8a84de2e4d +anyio==4.11.0 \ + --hash=sha256:0287e96f4d26d4149305414d4e3bc32f0dcd0862365a4bddea19d7a1ec38c4fc +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.1 \ + --hash=sha256:4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.4 \ + --hash=sha256:60c35bd96201b10c6e7a78121bd0da51084733efa303cc19ead021ab179cef5e +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.2 \ + --hash=sha256:dfcc56a83420c0dec0b83e97a6b33addac1b7554b8828894f9d203955591218c +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==37.11.0 \ + --hash=sha256:1508d2da94dfd1e0087b36f386126d84f8583b3de19ac18e392a2831a6676c57 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.121.3 \ + --hash=sha256:0c78fc87587fcd910ca1bbf5bc8ba37b80e119b388a7206b39f0ecc95ebf53e9 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.59.2 \ + --hash=sha256:9cde8b6a6b05f68516573523f2013a3574cb2c75299d7d500f44de82ba947b80 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.50.1 \ + --hash=sha256:15ae694b080269c53d325dcce94622f33e94cf81bd2123f029ab77e6b8f09eab +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.34.1 \ + --hash=sha256:863e687c857d51aa8ed45c2c3c44d46e02f7f15fd5116722ac8315838c62bb25 +guidata==3.13.1 \ + --hash=sha256:85cbe3ead3f45ac4750e059f8cb36a70e4a1473f3972e7921483af3825392540 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.27.0 \ + --hash=sha256:d3a2f3567c4f926ea39849cdf924c7e99e6686c9c8e288ae1037c8fa2a5d937b +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.0 \ + --hash=sha256:452f8822c0abb9c8a443d6410d3e6c4c86d8fc7dd5c2ae244ff194a321b1a863 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.1.4 \ + --hash=sha256:867799fbd2ef338b7f8b03d038d9c0e09415dfe45bb2893b48a510d1d746daa5 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.11.3 \ + --hash=sha256:5fa236a737ef3ca83870bf1b481218855834f4fad56ed0cb041ce5f2792cc7a3 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.138.13 \ + --hash=sha256:09f1130deb08e5d12fb3b59b55c113fd79debaaab9b224ffac17be8341de4326 +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.1 \ + --hash=sha256:55962bd71bb8b51a58ea3986139e8d517e4d7afc0722f86829f549a9e5c979b6 +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.7.0 \ + --hash=sha256:bce8ac85eb9521adc94e1845b4c03d88365fd6ac2f4908ec4ed1eb1b0a065f9f +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.7 \ + --hash=sha256:764f2602d25471c213919b8a1997df04bef869251db4ca8efba1b76b1bd9f7bb +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==0.3.27 \ + --hash=sha256:7b20c4f338826acb148d885b20a73a16e410ede9ee4f19bb02011852d5f98798 +langchain-core==0.3.78 \ + --hash=sha256:dafc4f7e9fd008f680bf0ffe5904dbaa45992abdb92627b68eccb7b4089cbbf0 +langchain-text-splitters==0.3.11 \ + --hash=sha256:cf079131166a487f1372c8ab5d0bfaa6c0a4291733d9c43a34a16ac9bcd6a393 +langsmith==0.4.44 \ + --hash=sha256:c249ed6cac490723ec7201debd9e3bc3b2a0bf54ff99aba89a135c9d78c83233 +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0rc1 \ + --hash=sha256:28a7586f1757ba38f1be9c87f0b11c31828dc8b08c72534ca8a9d190c1717a75 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.7 \ + --hash=sha256:4645fc5d9d20ffa3a39361fcdbcec731382763b623b72627806bf251b6388866 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.11.4 \ + --hash=sha256:5b6271dc3da2c88694dca2e0e0a7e1879f0e2fb046c789776f54d090a5243735 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.18.2 \ + --hash=sha256:749b5f83198f1ca64345603118a6f01a4e99ad4bf9d103ddc5a3200cc4614adf +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.0rc1 \ + --hash=sha256:9cd09955580ca85443da7ba2791d2f0f1c5f191c52c3046fef6a60155e14c1b3 +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.8.1 \ + --hash=sha256:c6c3b5a04994734386e8dad3c00a393f56d3b68a27cd2e8acae91a59e4122463 +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.3 \ + --hash=sha256:0e435406c608c382dd3378251d16db4d8189ca44ca508c281e1bfd6c80f47689 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.2.1 \ + --hash=sha256:e3a4ca7f3d7610615129a55dbde2e90eb67d11cef70936487b0a59717dba0bdc +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.13.6 \ + --hash=sha256:4acc1af29fa4e91e726b67d49277e8368f62e1c817f01bf14ecd8ca5e83bfaea +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.35.2 \ + --hash=sha256:5e8057c8289ac148c793478323b726faea933d9776bd6b8a554b0ab7c03db87e +polars-runtime-32==1.35.2 \ + --hash=sha256:ddc015fac39735592e2e7c834c02193ba4d257bb4c8c7478b9ebe440b0756b84 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +protobuf==6.31.1 \ + --hash=sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.4 \ + --hash=sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.14.6 \ + --hash=sha256:abd4b9d88614c38adb03f3fa53845b6cfce7441870edd6268ee900ca4e591578 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.4 \ + --hash=sha256:a40d17db26ec13cf975809633804e712bd24b473e77388c193c44043f85d0b25 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.8.1 \ + --hash=sha256:a1f041ed2ed6a9a88e2206998eed85217d3ca903937017cabadfd5a35cbe632e +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.6 \ + --hash=sha256:390e6480c5e3659f8a4c8d6a0373027820419ac14fa0d2713bd8e6c3e125b8b9 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-learn==1.7.2 \ + --hash=sha256:bb24510ed3f9f61476181e4db51ce801e2ba37541def12dc9333b946fc7a9cf8 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1rc1 \ + --hash=sha256:2b22eeee0d141c4dc31f105b766f3e6384d410f4fa053e3e76361833adb68b76 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.47.2 \ + --hash=sha256:c5847e96134e5c5371ee9fac6fdf1a67336d5815e09eb2a01fdb57a351ef915b +statsmodels==0.14.5 \ + --hash=sha256:95af7a9c4689d514f4341478b891f867766f3da297f514b8c4adf08f4fa61d03 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.2 \ + --hash=sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.31.0 \ + --hash=sha256:b5d14cd6293d79298b49c3485ffd9c07e3ce03a6da8c7dfbe0cb3dd7dc9a4774 +trove-classifiers==2025.5.9.12 \ + --hash=sha256:e381c05537adac78881c8fa345fd0e9970159f4e4a04fcc42cfd3129cca640ce +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dot.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dot.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dot.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dotb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dotb4.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0dotb4.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0free.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0free.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0free.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0freeb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0freeb4.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0freeb4.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slim.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slim.txt new file mode 100644 index 00000000..584b3786 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slim.txt @@ -0,0 +1,1042 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.10.0 \ + --hash=sha256:aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==4.0.2 \ + --hash=sha256:d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.1 \ + --hash=sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==6.2.2 \ + --hash=sha256:6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8 +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +debugpy==1.8.17 \ + --hash=sha256:893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.3.1 \ + --hash=sha256:279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9 +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.4 \ + --hash=sha256:ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.3 \ + --hash=sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.1 \ + --hash=sha256:31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.13.0 \ + --hash=sha256:096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0 \ + --hash=sha256:7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.8 \ + --hash=sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.19.0 \ + --hash=sha256:3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.13.0 \ + --hash=sha256:9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.1 \ + --hash=sha256:f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +ormsgpack==1.12.0 \ + --hash=sha256:4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.3 \ + --hash=sha256:99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +protobuf==6.33.1 \ + --hash=sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.1 \ + --hash=sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==4.0.4 \ + --hash=sha256:63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyogrio==0.12.1 \ + --hash=sha256:f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.14.0 \ + --hash=sha256:a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0 \ + --hash=sha256:0660b83968c15293fd9135e8d860053ee19500d52bf55ca4fb09de595a1af650 +scikit-learn==1.8.0 \ + --hash=sha256:56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.7.0 \ + --hash=sha256:0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.2 \ + --hash=sha256:f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.5.0 \ + --hash=sha256:ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721 +streamlit==1.52.2 \ + --hash=sha256:a16bb4fbc9781e173ce9dfbd8ffb189c174f148f9ca4fb8fa56423e84e193fc8 +streamlit-bokeh==3.8.1 \ + --hash=sha256:1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.4 \ + --hash=sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.20.1 \ + --hash=sha256:4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8 +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.15 \ + --hash=sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366 +wordcloud==1.9.5 \ + --hash=sha256:cda8de69df5fac5a90aea3646993b03b4a920d8aa6454b6f6e58c341397b9ca6 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimb4.txt new file mode 100644 index 00000000..7b90835f --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimb4.txt @@ -0,0 +1,1040 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8 +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +datashader==0.18.2 \ + --hash=sha256:2aa90e867a46b1e75248f32a47c5b14bb5dc869524152f88c0af8369d47359e7 +debugpy==1.8.17 \ + --hash=sha256:893cba7bb0f55161de4365584b025f7064e1f88913551bcd23be3260b231429c +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9 +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.3 \ + --hash=sha256:4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +llvmlite==0.46.0 \ + --hash=sha256:7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.8 \ + --hash=sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.19.0 \ + --hash=sha256:3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:56104693478fd447886c470a6d0558ded0fe2577df44c18232a6af6a2bbdd3e9 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +ormsgpack==1.12.0 \ + --hash=sha256:4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.2 \ + --hash=sha256:75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +protobuf==6.33.1 \ + --hash=sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:b883fe6fd85adad7932b3271c38ac289c65b7337c2c132e9569f9d3940620730 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyogrio==0.12.1 \ + --hash=sha256:f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0rc1 \ + --hash=sha256:290a41ff053a1a832842fdcb469f0fb829c8a344137487f40598cdb96422d0f4 +scikit-learn==1.8.0 \ + --hash=sha256:56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1 \ + --hash=sha256:3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721 +streamlit==1.52.1 \ + --hash=sha256:97fee2c3421d350fd65548e45a20f506ec1b651d78f95ecacbc0c2f9f838081c +streamlit-bokeh==3.8.1 \ + --hash=sha256:1bb651cedccd6b9bba669e5bb4fa8412223fd0644a6203e7755d85ea24497afc +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.3 \ + --hash=sha256:ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimf.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimf.txt new file mode 100644 index 00000000..956ddc9e --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimf.txt @@ -0,0 +1,908 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.10.0 \ + --hash=sha256:aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==4.0.2 \ + --hash=sha256:d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b +asttokens==3.0.1 \ + --hash=sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==6.2.2 \ + --hash=sha256:6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +coloredlogs==15.0.1 \ + --hash=sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:06a1317097f540d3bb6c7b81ed58a0d8b9dbfa97abf39dfd4c22ee87a6c7241e +cytoolz==1.1.0 \ + --hash=sha256:56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162 +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.3.1 \ + --hash=sha256:279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:67d841aa272be5500de7f447c40d1d8452783af33b4c3599899319f6ef9ad3c1 +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.1 \ + --hash=sha256:cba42174344c3a5b06f255ce65b350880f962d99ead85e776f23c6618a377a37 +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +humanfriendly==10.0 \ + --hash=sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1 +joblib==1.5.3 \ + --hash=sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.1 \ + --hash=sha256:31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:dd08422c485df288c5c899d2adbbba15e317fc30f627119c99c2111da1920fb5 +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markdownify==1.2.0 \ + --hash=sha256:48e150a1c4993d4d50f282f725c0111bd9eb25645d41fa2f543708fd44161351 +markupsafe==3.0.3 \ + --hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 +matplotlib==3.10.8 \ + --hash=sha256:25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.4 \ + --hash=sha256:4381fe2f2452a2d7589689693d3162e876b3ddb0a832cde7a414f8e1adf7eab1 +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff +multidict==6.7.0 \ + --hash=sha256:09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd +multipledispatch==1.0.0 \ + --hash=sha256:0c53cd8b077546da4e48869f49b13164bebafd0c2a5afceb6bb6a316e7fb46e4 +mypy==1.19.0 \ + --hash=sha256:0c01c99d626380752e527d5ce8e69ffbba2046eb8a060db0329690849cf9b6f9 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.13.0 \ + --hash=sha256:9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.1 \ + --hash=sha256:f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numpy==2.4.0rc1 \ + --hash=sha256:5b01cb0d1ee25acb05e38ae04133032f6e9512b40b53e549b2307d8ba8991587 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==3.0.0rc1 \ + --hash=sha256:34d8098a4e3ce9c0d6c235072be3ba3a94f42da4a884aa5ccdcde1f0aad47933 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.3 \ + --hash=sha256:99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1 +psutil==7.1.1 \ + --hash=sha256:092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc +psygnal==0.15.0 \ + --hash=sha256:023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:0c34fe18094686194f204a3b1787a27456897d8a2d62caf84b61e8dfbc0252ae +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.1 \ + --hash=sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pyct==0.5.0 \ + --hash=sha256:a4038a8885059ab8cac6f946ea30e0b5e6bdbe0b92b6723f06737035f9d65e8c +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==4.0.4 \ + --hash=sha256:63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0 +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95 +pynacl==1.6.1 \ + --hash=sha256:5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935 +pyodbc==5.3.0 \ + --hash=sha256:bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955 +pyogrio==0.12.1 \ + --hash=sha256:5399f66730978d8852ef5f44dbafa0f738e7f28f4f784349f36830b69a9d2134 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:1914e29e27933ba6f9822663ee0600f169014a2859f851c054c88cf5ea8a333c +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyreadline3==3.5.4 \ + --hash=sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.14.0 \ + --hash=sha256:a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767 +pyyaml==6.0.3 \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 +pyzmq==27.1.0 \ + --hash=sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0 \ + --hash=sha256:b702c3bb115e1dcf4abf5297429b5c90f2189655888cbed14921f3d26f81d3a4 +scikit-learn==1.8.0 \ + --hash=sha256:00d6f1d66fbcf4eba6e356e1420d33cc06c70a45bb1363cd6f6a8e4ebbbdece2 +scipy==1.16.3 \ + --hash=sha256:d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:23577f318d25cd623fedbe7f3330189f6d5f82c855db08e3b32bf77f43efdc4b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:0036ac886e0923417932c2e6369b6c52e38e0ff5d9120b90eef5cd9a5fc5cae9 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.7.0 \ + --hash=sha256:0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sspilib==0.5.0 \ + --hash=sha256:7d7724d5dbb31f68e62465863dfb862fe2793281ce40d0c8f2dc60c8f07998f2 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.4 \ + --hash=sha256:a22fa9047405d03260b483980635f0b041989d8bcc9a313f8fe18b411d84b1d7 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.20.1 \ + --hash=sha256:4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8 +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.15 \ + --hash=sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366 +wordcloud==1.9.5 \ + --hash=sha256:e19c3883165967ad4e0cb7baa9208fdca758cfd0f75d68743a9390269180d47a +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimfb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimfb4.txt new file mode 100644 index 00000000..920e8283 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0slimfb4.txt @@ -0,0 +1,854 @@ +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:f1d6aa90546a4e8f20c3500cb68ab14679cd91f927fa52970035fd3207dfb3da +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorcet==3.1.0 \ + --hash=sha256:2a7d59cc8d0f7938eeedd08aad3152b5319b4ba3bcb7a612398cc17a384cb296 +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:06a1317097f540d3bb6c7b81ed58a0d8b9dbfa97abf39dfd4c22ee87a6c7241e +cytoolz==1.1.0 \ + --hash=sha256:56e5afb69eb6e1b3ffc34716ee5f92ffbdb5cb003b3a5ca4d4b0fe700e217162 +dask==2025.11.0 \ + --hash=sha256:08c35a8146c05c93b34f83cf651009129c42ee71762da7ca452fb7308641c2b8 +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distributed==2025.11.0 \ + --hash=sha256:1794ff25b19ba347ccce563fb1dd5898c3bb30f500b15f8c20ad373f6281b30f +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flatbuffers==25.2.10 \ + --hash=sha256:ebba5f4d5ea615af3f7fd70fc310636fbb2bbd1f566ac0a23d98dd412de50051 +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:67d841aa272be5500de7f447c40d1d8452783af33b4c3599899319f6ef9ad3c1 +foundry-local-sdk==0.5.1 \ + --hash=sha256:f3639a3666bc3a94410004a91671338910ac2e1b8094b1587cc4db0f4a7df07e +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +gitdb==4.0.12 \ + --hash=sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf +gitpython==3.1.45 \ + --hash=sha256:8908cb2e02fb3b93b7eb0f2827125cb699869470432cc885f019b8fd0fccff77 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc +holoviews==1.22.1 \ + --hash=sha256:6f4f0656336035cde1d8103ac6461d7c8ac9a60c4a6d883785cc81f2cc5b8702 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hvplot==0.12.1 \ + --hash=sha256:034b5061cba597877f85dd427523364f11677d9d04c5e845c17e6d733a7bfaed +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1 +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891 +lazy-loader==0.4 \ + --hash=sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc +librt==0.6.2 \ + --hash=sha256:dd08422c485df288c5c899d2adbbba15e317fc30f627119c99c2111da1920fb5 +linkify-it-py==2.0.3 \ + --hash=sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 +matplotlib==3.10.8 \ + --hash=sha256:25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mdit-py-plugins==0.5.0 \ + --hash=sha256:07a08422fc1936a5d26d146759e9155ea466e842f5ab2f7d2266dd084c8dab1f +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +msgpack==1.1.2 \ + --hash=sha256:5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff +multidict==6.7.0 \ + --hash=sha256:09929cab6fcb68122776d575e03c6cc64ee0b8fca48d17e135474b042ce515cd +mypy==1.19.0 \ + --hash=sha256:0c01c99d626380752e527d5ce8e69ffbba2046eb8a060db0329690849cf9b6f9 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +mysql-connector-python==9.5.0 \ + --hash=sha256:ace137b88eb6fdafa1e5b2e03ac76ce1b8b1844b3a4af1192a02ae7c1a45bdee +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:dce4248edc427c9b79261f3e6e2b3ecbdd9b88c267012168b4a7b3fc6fd41d13 +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numpy==2.4.0rc1 \ + --hash=sha256:5b01cb0d1ee25acb05e38ae04133032f6e9512b40b53e549b2307d8ba8991587 +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==3.0.0rc0 \ + --hash=sha256:eed419f07d5cf00d4364ba27cf9e8235ec7d9ae8e4e9abb638eefac31bcdb9c2 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +panel==1.8.4 \ + --hash=sha256:d0e0f316c78159c87544a403d4600f7f056a6cafdc035df5b13c9c8667c36c96 +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +param==2.3.1 \ + --hash=sha256:886b19031438719bbecfd15044dcdd9ed3cb9edb199191294f75600c7081d163 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:905b0365b210c73afb0ebe9101a32572152dfd1c144c7e28968a331b9217b94a +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1 +psutil==7.1.1 \ + --hash=sha256:092b6350145007389c1cfe5716050f02030a05219d90057ea867d18fe8d372fc +psygnal==0.15.0 \ + --hash=sha256:023c361c38e8ada87d0704704e1f2b7e799e9771e00b8e174fb409ff9ddeb502 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyarrow==22.0.0 \ + --hash=sha256:0c34fe18094686194f204a3b1787a27456897d8a2d62caf84b61e8dfbc0252ae +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydeck==0.9.1 \ + --hash=sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038 +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:fae552767d8e5153ed498f1bca92d905d0d46311d831eefb0f06de38f7695c95 +pynacl==1.6.1 \ + --hash=sha256:5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935 +pyodbc==5.3.0 \ + --hash=sha256:bfeb3e34795d53b7d37e66dd54891d4f9c13a3889a8f5fe9640e56a82d770955 +pyogrio==0.12.1 \ + --hash=sha256:5399f66730978d8852ef5f44dbafa0f738e7f28f4f784349f36830b69a9d2134 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:1914e29e27933ba6f9822663ee0600f169014a2859f851c054c88cf5ea8a333c +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pyviz-comms==3.0.6 \ + --hash=sha256:4eba6238cd4a7f4add2d11879ce55411785b7d38a7c5dba42c7a0826ca53e6c2 +pywavelets==1.9.0 \ + --hash=sha256:3b6ff6ba4f625d8c955f68c2c39b0a913776d406ab31ee4057f34ad4019fb33b +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:34b55ae9a1b671fe3eae071d86618110538e8eaad18fcb1531c0830b91a82767 +pyyaml==6.0.3 \ + --hash=sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9 +pyzmq==27.1.0 \ + --hash=sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0 +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:9ec02e62ae765a318d6de38df609c57fc6dacc65c0ed1fd489036834fd8a620c +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:6567d2bb951e21232c2f660c24cf3470bb96de56cdcb3f071a83feeaff8a2772 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-image==0.26.0rc1 \ + --hash=sha256:89249aa0fb336de32b216cbcc6359dd8364af0824578854edcdca8b2dda673a2 +scikit-learn==1.8.0 \ + --hash=sha256:00d6f1d66fbcf4eba6e356e1420d33cc06c70a45bb1363cd6f6a8e4ebbbdece2 +scipy==1.16.3 \ + --hash=sha256:d9f48cafc7ce94cf9b15c6bffdc443a81a27bf7075cf2dcd5c8b40f85d10c4e7 +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:23577f318d25cd623fedbe7f3330189f6d5f82c855db08e3b32bf77f43efdc4b +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:0036ac886e0923417932c2e6369b6c52e38e0ff5d9120b90eef5cd9a5fc5cae9 +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +smmap==5.0.2 \ + --hash=sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tblib==3.1.0 \ + --hash=sha256:670bb4582578134b3d81a84afa1b016128b429f3d48e6cbbaecc9d15675e984e +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tifffile==2025.3.30 \ + --hash=sha256:0ed6eee7b66771db2d1bfc42262a51b01887505d35539daef118f4ff8c0f629c +tiktoken==0.12.0 \ + --hash=sha256:f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +toml==0.10.2 \ + --hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.3 \ + --hash=sha256:16abdeb0211796ffc73765bc0a20119712d68afeeaf93d1a3f2edf6b3aee8d5a +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +uc-micro-py==1.0.3 \ + --hash=sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5 +ujson==5.11.0 \ + --hash=sha256:48055e1061c1bb1f79e75b4ac39e821f3f35a9b82de17fce92c3140149009bec +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 +wrapt==2.0.1 \ + --hash=sha256:61c4956171c7434634401db448371277d07032a81cc21c599c22953374781395 +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zict==3.0.0 \ + --hash=sha256:5796e36bd0e0cc8cf0fbc1ace6a68912611c1dbd74750a3f3026b9b9d6a327ae +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl_wheels.txt new file mode 100644 index 00000000..cd60d43f --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whl_wheels.txt @@ -0,0 +1,970 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==6.0.0 \ + --hash=sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8 +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.10.0 \ + --hash=sha256:aef8a81283a34d0ab31630c9b7dfe70c812c95eba78171367ca8745e88124734 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==4.0.2 \ + --hash=sha256:d7546c00a12efc32650b19a2bb66a153883185d3179ab0d4868086f807338b9b +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.1 \ + --hash=sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==6.2.2 \ + --hash=sha256:6c09c98183bf58560c97b2abfcedcbaf6a896a490f534b031b661d3723b45ace +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8 +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.3.1 \ + --hash=sha256:279ab641905e9f11129f56a8a78f493518515b83402b860f6f06dd7c011fdfa8 +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.4 \ + --hash=sha256:ee5660a2dbee1fc1e738fc41f0a3dd68bc240ca4bc92a696e95232f2cc8999a7 +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.3 \ + --hash=sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.1 \ + --hash=sha256:31b059de96de0754ff1f2ce6279774b6aab8c34d7082e9752db58207c99bd514 +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.13.0 \ + --hash=sha256:096793e2be6230816f3f7e030370e66c0f4a89707c59bf2d8fad3ca33869bd1c +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +librt==0.6.2 \ + --hash=sha256:faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b +llvmlite==0.46.0 \ + --hash=sha256:7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.8 \ + --hash=sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +mypy==1.19.0 \ + --hash=sha256:3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.13.0 \ + --hash=sha256:9b795523c179ca78204e3be53726da374168f906e38de2ff174c2363baaaf481 +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.1 \ + --hash=sha256:f4e2451c19910c33b88709b84537e11f6368c1cdff1aa0c43db701aea535dd44 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +ormsgpack==1.12.0 \ + --hash=sha256:4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.3 \ + --hash=sha256:99b41bd2a3acfc8020edfc912da69b9459f974712771d53adb6923afdb880856 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.1 \ + --hash=sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==4.0.4 \ + --hash=sha256:63e06a37d5922555ee2c20963eb42559918c20bd2b21244e4ef426e7c43b92e0 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyogrio==0.12.1 \ + --hash=sha256:f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.14.0 \ + --hash=sha256:a71a917464effc48f4c70363f90b8520e5e3ba8201428da80b97a7ceb259e32a +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-learn==1.8.0 \ + --hash=sha256:56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.7.0 \ + --hash=sha256:0a0cdb0f533c702bfefb23550220df70f9bc2626f11eaecf33181c1b9e64c11c +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.2 \ + --hash=sha256:f1e39e7c692e3683f5d805a09c5d83daa01bae52f8ff00f0a69b92ba7bd117fa +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.5.0 \ + --hash=sha256:ca2a21a4e90db563c2cec639c66b3a29ea53129a0c55ff1e4154a02937f6bd45 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.4 \ + --hash=sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.20.1 \ + --hash=sha256:4b3bde918a67c8e03d861aa02deca90a95bbac572e71b1b9be56ff49affdb5a8 +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.15 \ + --hash=sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366 +wordcloud==1.9.5 \ + --hash=sha256:cda8de69df5fac5a90aea3646993b03b4a920d8aa6454b6f6e58c341397b9ca6 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4_wheels.txt b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4_wheels.txt new file mode 100644 index 00000000..d4653e45 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_14_2_0whlb4_wheels.txt @@ -0,0 +1,968 @@ +absl-py==2.3.0 \ + --hash=sha256:9824a48b654a306168f63e0d97714665f8490b8d89ec7bf2efc24bf67cf579b3 +adbc-driver-manager==1.9.0 \ + --hash=sha256:c5995b029cc99d80f2dc4bd34c41320fe8185da0fdc115d424f7699d1d7ffbac +aiofiles==24.1.0 \ + --hash=sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5 +aiohappyeyeballs==2.6.1 \ + --hash=sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8 +aiohttp==3.13.1 \ + --hash=sha256:748a00167b7a88385756fa615417d24081cba7e58c8727d2e28817068b97c18c +aiosignal==1.4.0 \ + --hash=sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e +aiosqlite==0.21.0 \ + --hash=sha256:2549cf4057f95f53dcba16f2b64e8e2791d7e1adedb13197dd8ed77bb226d7d0 +alabaster==1.0.0 \ + --hash=sha256:fc6786402dc3fcb2de3cabd5fe455a2db534b371124f1f21de8731783dec828b +alembic==1.17.2 \ + --hash=sha256:f483dd1fe93f6c5d49217055e4d15b905b425b6af906746abb35b69c1996c4e6 +altair==5.5.0 \ + --hash=sha256:91a310b926508d560fe0148d02a194f38b824122641ef528113d029fcd129f8c +annotated-doc==0.0.3 \ + --hash=sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580 +annotated-types==0.7.0 \ + --hash=sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +ansicolors==1.1.8 \ + --hash=sha256:00d2dde5a675579325902536738dd27e4fac1fd68f773fe36c21044eb559e187 +anthropic==0.75.0 \ + --hash=sha256:ea8317271b6c15d80225a9f3c670152746e88805a7a61e14d4a374577164965b +anyio==4.12.0 \ + --hash=sha256:dad2376a628f98eeca4881fc56cd06affd18f659b17a747d3ff0307ced94b1bb +anywidget==0.9.21 \ + --hash=sha256:78c268e0fbdb1dfd15da37fb578f9cf0a0df58a430e68d9156942b7a9391a761 +argcomplete==3.6.3 \ + --hash=sha256:f5007b3a600ccac5d25bbce33089211dfd49eab4a7718da3f10e3082525a92ce +argon2-cffi==25.1.0 \ + --hash=sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741 +argon2-cffi-bindings==25.1.0 \ + --hash=sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98 +array-api-compat==1.12.0 \ + --hash=sha256:a0b4795b6944a9507fde54679f9350e2ad2b1e2acf4a2408a098cdc27f890a8b +arrow==1.3.0 \ + --hash=sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80 +asgi-csrf==0.11 \ + --hash=sha256:03ac140115f39d4295288a9adf74fdc6ae607f6ef44abee8466520458207242b +asgiref==3.8.1 \ + --hash=sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47 +asn1crypto==1.5.1 \ + --hash=sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67 +asteval==1.0.5 \ + --hash=sha256:082b95312578affc8a6d982f7d92b7ac5de05634985c87e7eedd3188d31149fa +astroid==3.3.9 \ + --hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248 +astropy==7.1.1 \ + --hash=sha256:d56b83a7e6757ba4936b4bc73284a2ac4bdf94d7b428f7b6ce8829e4a48c37e9 +astropy-iers-data==0.2025.9.29.0.35.48 \ + --hash=sha256:c6988670a03a66fefe9266164194c8e5d74513efd13af47efe2829b7be4b5159 +asttokens==3.0.0 \ + --hash=sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2 +async-lru==2.0.5 \ + --hash=sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943 +asyncssh==2.21.0 \ + --hash=sha256:cf7f3dfa52b2cb4ad31f0d77ff0d0a8fdd850203da84a0e72e62c36fdd4daf4b +atomicwrites==1.4.0 \ + --hash=sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197 +attrs==25.4.0 \ + --hash=sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373 +autopep8==2.0.4 \ + --hash=sha256:067959ca4a07b24dbd5345efa8325f5f58da4298dab0dde0443d5ed765de80cb +azure-core==1.36.0 \ + --hash=sha256:fee9923a3a753e94a259563429f3644aaf05c486d45b1215d098115102d91d3b +azure-cosmos==4.14.2 \ + --hash=sha256:f0783a9b1c13f8dbd62bdbf8456f927125d77d5267e5ff6b37193bcd4554fd2c +azure-identity==1.25.1 \ + --hash=sha256:e9edd720af03dff020223cd269fa3a61e8f345ea75443858273bcb44844ab651 +babel==2.17.0 \ + --hash=sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2 +baresql==1.0.0 \ + --hash=sha256:a24d17f46beb47c221f328f7e06710e3896c6203a8e1909788d7128f27b86f01 +bcrypt==5.0.0 \ + --hash=sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2 +beautifulsoup4==4.14.2 \ + --hash=sha256:5ef6fa3a8cbece8488d66985560f97ed091e22bbc4e9c2338508a9d5de6d4515 +binaryornot==0.4.4 \ + --hash=sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4 +black==25.11.0 \ + --hash=sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664 +bleach==6.2.0 \ + --hash=sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e +blinker==1.9.0 \ + --hash=sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc +bokeh==3.8.1 \ + --hash=sha256:89a66cb8bfe85e91bce144e3ccf3c4a6f0f1347e7006282972568ea0ecacbb00 +branca==0.8.1 \ + --hash=sha256:d29c5fab31f7c21a92e34bf3f854234e29fecdcf5d2df306b616f20d816be425 +brotli==1.2.0 \ + --hash=sha256:e7c0af964e0b4e3412a0ebf341ea26ec767fa0b4cf81abb5e897c9338b5ad6a3 +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +cachetools==5.5.2 \ + --hash=sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a +cattrs==1.2.0 \ + --hash=sha256:6deb42a9166e00fe44f89cfa40ebe8d8164f31fa6001de90cced5ffac0622444 +certifi==2025.11.12 \ + --hash=sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b +cffi==2.0.0 \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 +chardet==5.2.0 \ + --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 +charset-normalizer==3.4.3 \ + --hash=sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c +clarabel==0.11.1 \ + --hash=sha256:557d5148a4377ae1980b65d00605ae870a8f34f95f0f6a41e04aa6d3edf67148 +click==8.3.0 \ + --hash=sha256:9b9f285302c6e3064f4330c05f05b81945b2a39544279343e6e7c5f27a9baddc +click-default-group==1.2.4 \ + --hash=sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f +cloudpickle==3.1.2 \ + --hash=sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a +cohere==5.20.0 \ + --hash=sha256:a95f17ed22be3f978363703beb6008b55000ce0e85124ddb976fa5b688014fea +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +colorlog==6.9.0 \ + --hash=sha256:5906e71acd67cb07a71e779c47c4bcb45fb8c2993eebe9e5adcd6a6f1b283eff +comm==0.2.3 \ + --hash=sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417 +contourpy==1.3.3 \ + --hash=sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd +cookiecutter==2.6.0 \ + --hash=sha256:a54a8e37995e4ed963b3e82831072d1ad4b005af736bb17b99c2cbd9d41b6e2d +cryptography==46.0.3 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb +cycler==0.12.1 \ + --hash=sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30 +cython==3.2.3 \ + --hash=sha256:84330e7c8bf220a82b633678b9f99e10227c8f4c406d67c5552449ab2afedef8 +cytoolz==1.1.0 \ + --hash=sha256:472c1c9a085f5ad973ec0ad7f0b9ba0969faea6f96c9e397f6293d386f3a25ec +datasette==0.65.2 \ + --hash=sha256:d4f342a5c86d073bbb1880a9df792354cae4f951e427b57586713eff1896507f +datasette-graphql==2.2 \ + --hash=sha256:cd9f61afdcaab1ce4ff6775296e6ece99305bf05cbfae4c1c938a6c9e60cd485 +debugpy==1.8.17 \ + --hash=sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef +decorator==5.2.1 \ + --hash=sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a +defusedxml==0.7.1 \ + --hash=sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61 +deprecated==1.3.1 \ + --hash=sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f +diff-match-patch==20241021 \ + --hash=sha256:93cea333fb8b2bc0d181b0de5e16df50dd344ce64828226bda07728818936782 +dill==0.4.0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 +distro==1.9.0 \ + --hash=sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2 +django==5.2.8 \ + --hash=sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f +dnspython==2.7.0 \ + --hash=sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86 +docstring-parser==0.17.0 \ + --hash=sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708 +docstring-to-markdown==0.17 \ + --hash=sha256:fd7d5094aa83943bf5f9e1a13701866b7c452eac19765380dead666e36d3711c +docutils==0.21.2 \ + --hash=sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2 +duckdb==1.4.3 \ + --hash=sha256:23b12854032c1a58d0452e2b212afa908d4ce64171862f3792ba9a596ba7c765 +entrypoints==0.4 \ + --hash=sha256:f174b5ff827504fd3cd97cc3f8649f3693f51538c7e4bdf3ef002c8429d42f9f +et-xmlfile==2.0.0 \ + --hash=sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa +eval-type-backport==0.2.2 \ + --hash=sha256:cb6ad7c393517f476f96d456d0412ea80f0a8cf96f6892834cd9340149111b0a +executing==2.2.1 \ + --hash=sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017 +faker==38.2.0 \ + --hash=sha256:35fe4a0a79dee0dc4103a6083ee9224941e7d3594811a50e3969e547b0d2ee65 +fasta2a==0.6.0 \ + --hash=sha256:23d49307f6a372e07b9ec9a21187a0864429145e8ded4a41262bd33e2ecaee4c +fastapi==0.123.9 \ + --hash=sha256:f54c69f23db14bd3dbcdfaf3fdce0483ca5f499512380c8e379a70cda30aa920 +fastavro==1.12.1 \ + --hash=sha256:792356d320f6e757e89f7ac9c22f481e546c886454a6709247f43c0dd7058004 +fastjsonschema==2.21.2 \ + --hash=sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463 +filelock==3.20.0 \ + --hash=sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2 +flake8==7.1.1 \ + --hash=sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213 +flask==3.1.2 \ + --hash=sha256:ca1d8112ec8a6158cc29ea4858963350011b5c846a414cdb7a954aa9e967d03c +flexcache==0.3 \ + --hash=sha256:d43c9fea82336af6e0115e308d9d33a185390b8346a017564611f1466dcd2e32 +flexparser==0.4 \ + --hash=sha256:3738b456192dcb3e15620f324c447721023c0293f6af9955b481e91d00179846 +flit==3.12.0 \ + --hash=sha256:2b4e7171dc22881fa6adc2dbf083e5ecc72520be3cd7587d2a803da94d6ef431 +flit-core==3.12.0 \ + --hash=sha256:e7a0304069ea895172e3c7bb703292e992c5d1555dd1233ab7b5621b5b69e62c +folium==0.20.0 \ + --hash=sha256:f0bc2a92acde20bca56367aa5c1c376c433f450608d058daebab2fc9bf8198bf +fonttools==4.61.0 \ + --hash=sha256:02bdf8e04d1a70476564b8640380f04bb4ac74edc1fc71f1bacb840b3e398ee9 +fqdn==1.5.1 \ + --hash=sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014 +frozenlist==1.8.0 \ + --hash=sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0 +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 +fuzzywuzzy==0.18.0 \ + --hash=sha256:928244b28db720d1e0ee7587acf660ea49d7e4c632569cad4f1cd7e68a5f0993 +genai-prices==0.0.38 \ + --hash=sha256:c1ddf9040877116e23c4e1dfb390f8e9683b533c758e5d756494e1a26159ea4f +geographiclib==2.1 \ + --hash=sha256:e2a873b9b9e7fc38721ad73d5f4e6c9ed140d428a339970f505c07056997d40b +geopandas==1.1.1 \ + --hash=sha256:589e61aaf39b19828843df16cb90234e72897e2579be236f10eee0d052ad98e8 +geopy==2.4.1 \ + --hash=sha256:ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 +google-auth==2.43.0 \ + --hash=sha256:af628ba6fa493f75c7e9dbe9373d148ca9f4399b5ea29976519e0a3848eddd16 +google-genai==1.55.0 \ + --hash=sha256:98c422762b5ff6e16b8d9a1e4938e8e0ad910392a5422e47f5301498d7f373a1 +graphene==3.4.3 \ + --hash=sha256:820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71 +graphql-core==3.2.6 \ + --hash=sha256:78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f +graphql-relay==3.2.0 \ + --hash=sha256:c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5 +greenlet==3.2.4 \ + --hash=sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01 +griffe==1.14.0 \ + --hash=sha256:0e9d52832cccf0f7188cfe585ba962d2674b241c01916d780925df34873bceb0 +groq==0.37.1 \ + --hash=sha256:b49f8c8898c55eaec9f71f1342f3fcacc9560d67a08ce5f35fbfb84e8dacd3da +guidata==3.13.3 \ + --hash=sha256:4aa3ed94ff81c2e4ad096d78bad1197b83dac5a521985dc52bf848ccb2f891eb +h11==0.16.0 \ + --hash=sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +h2==4.2.0 \ + --hash=sha256:479a53ad425bb29af087f3458a61d30780bc818e4ebcf01f0b536ba916462ed0 +h5py==3.15.1 \ + --hash=sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734 +hatchling==1.28.0 \ + --hash=sha256:dc48722b68b3f4bbfa3ff618ca07cdea6750e7d03481289ffa8be1521d18a961 +hf-xet==1.2.0 \ + --hash=sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69 +hpack==4.1.0 \ + --hash=sha256:157ac792668d995c657d93111f46b4535ed114f0c9c8d672271bbec7eae1b496 +html5lib==1.1 \ + --hash=sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d +httpcore==1.0.9 \ + --hash=sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55 +httpie==3.2.4 \ + --hash=sha256:4bd0435cc4b9bca59501bc65089de96f3e93b393803f32a81951db62050ebf0b +httpx==0.28.1 \ + --hash=sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad +httpx-sse==0.4.0 \ + --hash=sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f +huggingface-hub==1.2.3 \ + --hash=sha256:c9b7a91a9eedaa2149cdc12bdd8f5a11780e10de1f1024718becf9e41e5a4642 +hupper==1.12.1 \ + --hash=sha256:e872b959f09d90be5fb615bd2e62de89a0b57efc037bdf9637fb09cdf8552b19 +hypercorn==0.17.3 \ + --hash=sha256:059215dec34537f9d40a69258d323f56344805efb462959e727152b0aa504547 +hyperframe==6.1.0 \ + --hash=sha256:b03380493a519fce58ea5af42e4a42317bf9bd425596f7a0835ffce80f1a42e5 +hypothesis==6.148.7 \ + --hash=sha256:94dbd58ebf259afa3bafb1d3bf5761ac1bde6f1477de494798cbf7960aabbdee +id==1.5.0 \ + --hash=sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658 +idna==3.11 \ + --hash=sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea +imageio==2.37.0 \ + --hash=sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed +imagesize==1.4.1 \ + --hash=sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b +imbalanced-learn==0.14.0 \ + --hash=sha256:8a8700c02ca185e113064815513f990fbf84eb4e7701f1d4e944ce67fb259a60 +importlib-metadata==8.7.0 \ + --hash=sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd +inflection==0.5.1 \ + --hash=sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2 +iniconfig==2.1.0 \ + --hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760 +intervaltree==3.1.0 \ + --hash=sha256:902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d +invoke==2.2.1 \ + --hash=sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8 +ipycanvas==0.14.3 \ + --hash=sha256:8a2f48e1e079355d3e7d5683e5c6e7684a87c15c3750c8d8cd2289c95383ee3e +ipykernel==6.31.0 \ + --hash=sha256:abe5386f6ced727a70e0eb0cf1da801fa7c5fa6ff82147747d5a0406cd8c94af +ipyleaflet==0.20.0 \ + --hash=sha256:b4c20ddc0b17d68e226cd3367ca2215a4db7e2b14374468c0eeaa54b53e4d173 +ipympl==0.9.8 \ + --hash=sha256:4a03612f77d92c9e2160c9e0d2a80b277e30387126399088f780dba9622247be +ipython==9.8.0 \ + --hash=sha256:ebe6d1d58d7d988fbf23ff8ff6d8e1622cfdb194daf4b7b73b792c4ec3b85385 +ipython-genutils==0.2.0 \ + --hash=sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8 +ipython-pygments-lexers==1.1.1 \ + --hash=sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c +ipython-sql==0.5.0 \ + --hash=sha256:61b46ecffb956f62dbc17b5744cf70c649104c8db9afd821aa39b31f7cbb5d5b +ipywidgets==8.1.8 \ + --hash=sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e +isoduration==20.11.0 \ + --hash=sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042 +isort==6.0.1 \ + --hash=sha256:2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615 +itsdangerous==2.2.0 \ + --hash=sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef +janus==2.0.0 \ + --hash=sha256:7e6449d34eab04cd016befbd7d8c0d8acaaaab67cb59e076a69149f9031745f9 +jaraco-classes==3.4.0 \ + --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790 +jaraco-context==6.0.1 \ + --hash=sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4 +jaraco-functools==4.3.0 \ + --hash=sha256:227ff8ed6f7b8f62c56deff101545fa7543cf2c8e7b82a7c2116e672f29c26e8 +jedi==0.19.2 \ + --hash=sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9 +jellyfish==1.2.1 \ + --hash=sha256:9a73b5c6425a70ebd440579a677eb4f03b327b2f59090db34e6c937aeea5aabd +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 +jiter==0.11.1 \ + --hash=sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c +joblib==1.5.2 \ + --hash=sha256:4e1f0bdbb987e6d843c70cf43714cb276623def372df3c22fe5266b2670bc241 +json5==0.12.1 \ + --hash=sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5 +jsonpatch==1.33 \ + --hash=sha256:0ae28c0cd062bbd8b8ecc26d7d164fbbea9652a1a3693f3b956c1eae5145dade +jsonpointer==3.0.0 \ + --hash=sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942 +jsonschema==4.24.0 \ + --hash=sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d +jsonschema-specifications==2025.9.1 \ + --hash=sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe +julia==0.6.2 \ + --hash=sha256:90752f71376fdb9919439d20496c2dab24486dfa4fe8a831d6dd14a1bcbc04d1 +jupyter==1.1.1 \ + --hash=sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83 +jupyter-bokeh==4.0.5 \ + --hash=sha256:1110076c14c779071cf492646a1a871aefa8a477261e4721327a666e65df1a2c +jupyter-client==8.6.3 \ + --hash=sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f +jupyter-console==6.6.3 \ + --hash=sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485 +jupyter-core==5.9.1 \ + --hash=sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407 +jupyter-events==0.12.0 \ + --hash=sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb +jupyter-leaflet==0.20.0 \ + --hash=sha256:2e27ce83647316424f04845e3a6af35e1ee44c177c318a145646b11f4afe0764 +jupyter-lsp==2.3.0 \ + --hash=sha256:e914a3cb2addf48b1c7710914771aaf1819d46b2e5a79b0f917b5478ec93f34f +jupyter-server==2.17.0 \ + --hash=sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f +jupyter-server-terminals==0.5.3 \ + --hash=sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa +jupyterlab==4.5.0 \ + --hash=sha256:88e157c75c1afff64c7dc4b801ec471450b922a4eae4305211ddd40da8201c8a +jupyterlab-pygments==0.3.0 \ + --hash=sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780 +jupyterlab-server==2.28.0 \ + --hash=sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968 +jupyterlab-widgets==3.0.15 \ + --hash=sha256:d59023d7d7ef71400d51e6fee9a88867f6e65e10a4201605d2d7f3e8f012a31c +keras==3.12.0 \ + --hash=sha256:02b69e007d5df8042286c3bcc2a888539e3e487590ffb08f6be1b4354df50aa8 +keyring==25.6.0 \ + --hash=sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd +kiwisolver==1.4.9 \ + --hash=sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7 +langchain==1.1.3 \ + --hash=sha256:e5b208ed93e553df4087117a40bd0d450f9095030a843cad35c53ff2814bf731 +langchain-core==1.2.0 \ + --hash=sha256:ed95ee5cbab0d1188c91ad230bb6a513427bc1e2ed5a8329075ab24412cd7727 +langgraph==1.0.5 \ + --hash=sha256:b4cfd173dca3c389735b47228ad8b295e6f7b3df779aba3a1e0c23871f81281e +langgraph-checkpoint==3.0.0 \ + --hash=sha256:560beb83e629784ab689212a3d60834fb3196b4bbe1d6ac18e5cad5d85d46010 +langgraph-prebuilt==1.0.5 \ + --hash=sha256:22369563e1848862ace53fbc11b027c28dd04a9ac39314633bb95f2a7e258496 +langgraph-sdk==0.3.0 \ + --hash=sha256:c1ade483fba17ae354ee920e4779042b18d5aba875f2a858ba569f62f628f26f +langsmith==0.4.59 \ + --hash=sha256:97c26399286441a7b7b06b912e2801420fbbf3a049787e609d49dc975ab10bc5 +librt==0.6.2 \ + --hash=sha256:faf0112a7a8fcabd168c69d1bcbabca8767738db3f336caaac5653d91c3d1c0b +llvmlite==0.46.0 \ + --hash=sha256:7821eda3ec1f18050f981819756631d60b6d7ab1a6cf806d9efefbe3f4082d61 +lmfit==1.3.3 \ + --hash=sha256:a9e9ec7d0d0ec962cc6c078ad1ec6c8311d3ac0e5f0947a00a91f5509dacc2b2 +locket==1.0.0 \ + --hash=sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3 +logfire-api==4.14.2 \ + --hash=sha256:aa4af2ecb007c3e0095e25ba4526fd8c0e2c0be2ceceac71ca651c4ad86dc713 +lsprotocol==2023.0.1 \ + --hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 +lxml==6.0.2 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed +mako==1.3.10 \ + --hash=sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59 +markdown==3.9 \ + --hash=sha256:9f4d91ed810864ea88a6f32c07ba8bee1346c0cc1f6b1f9f6c822f2a9667d280 +markdown-it-py==4.0.0 \ + --hash=sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +markupsafe==3.0.3 \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 +matplotlib==3.10.8 \ + --hash=sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11 +matplotlib-inline==0.2.1 \ + --hash=sha256:d56ce5156ba6085e00a9d54fead6ed29a9c47e215cd1bba2e976ef39f5710a76 +maturin==1.10.2 \ + --hash=sha256:da777766fd584440dc9fecd30059a94f85e4983f58b09e438ae38ee4b494024c +mccabe==0.7.0 \ + --hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e +mcp==1.21.0 \ + --hash=sha256:598619e53eb0b7a6513db38c426b28a4bdf57496fed04332100d2c56acade98b +mdurl==0.1.2 \ + --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +mercantile==1.2.1 \ + --hash=sha256:30f457a73ee88261aab787b7069d85961a5703bb09dc57a170190bc042cd023f +mergedeep==1.3.4 \ + --hash=sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307 +missingno==0.5.2 \ + --hash=sha256:55782621ce09ba0f0a1d08e5bd6d6fe1946469fb03951fadf7d209911ca5b072 +mistralai==1.9.11 \ + --hash=sha256:7a3dc2b8ef3fceaa3582220234261b5c4e3e03a972563b07afa150e44a25a6d3 +mistune==3.1.4 \ + --hash=sha256:93691da911e5d9d2e23bc54472892aff676df27a75274962ff9edc210364266d +mizani==0.14.3 \ + --hash=sha256:6d2ca9b1b8366ff85668f0cc1b6095f1e702e26e66f132c4f02a949efa32a688 +ml-dtypes==0.5.3 \ + --hash=sha256:cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea +mlxtend==0.23.4 \ + --hash=sha256:8675456e2b71841116e5317f6d7aa568848ea2546865eb5eca7192e9b7f395f4 +more-itertools==10.7.0 \ + --hash=sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e +mpld3==0.5.12 \ + --hash=sha256:bea31799a4041029a906f53f2662bbf1c49903e0c0bc712b412354158ec7cf54 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c +msal==1.32.3 \ + --hash=sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569 +msal-extensions==1.3.1 \ + --hash=sha256:96d3de4d034504e969ac5e85bae8106c8373b5c6568e4c8fa7af2eca9dbe6bca +multidict==6.7.0 \ + --hash=sha256:2f67396ec0310764b9222a1728ced1ab638f61aadc6226f17a71dd9324f9a99c +mypy==1.19.0 \ + --hash=sha256:3ad925b14a0bb99821ff6f734553294aa6a3440a8cb082fe1f5b84dfb662afb1 +mypy-extensions==1.1.0 \ + --hash=sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +namex==0.1.0 \ + --hash=sha256:e2012a474502f1e2251267062aae3114611f07df4224b6e06334c57b0f2ce87c +narwhals==2.12.0 \ + --hash=sha256:baeba5d448a30b04c299a696bd9ee5ff73e4742143e06c49ca316b46539a7cbb +nbclient==0.10.2 \ + --hash=sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d +nbconvert==7.16.6 \ + --hash=sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b +nbformat==5.10.4 \ + --hash=sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b +nest-asyncio==1.6.0 \ + --hash=sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c +networkx==3.6.1 \ + --hash=sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762 +nh3==0.3.2 \ + --hash=sha256:562da3dca7a17f9077593214a9781a94b8d76de4f158f8c895e62f09573945fe +nltk==3.9.1 \ + --hash=sha256:4fa26829c5b00715afe3061398a8989dc643b92ce7dd93fb4585a70930d168a1 +notebook==7.5.0 \ + --hash=sha256:3300262d52905ca271bd50b22617681d95f08a8360d099e097726e6d2efb5811 +notebook-shim==0.2.4 \ + --hash=sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef +numba==0.63.1 \ + --hash=sha256:8d6d5ce85f572ed4e1a135dbb8c0114538f9dd0e3657eeb0bb64ab204cbe2a8f +numpy==2.3.5 \ + --hash=sha256:e6a0bc88393d65807d751a614207b7129a310ca4fe76a74e5c7da5fa5671417e +numpydoc==1.8.0 \ + --hash=sha256:72024c7fd5e17375dec3608a27c03303e8ad00c81292667955c6fea7a3ccf541 +openai==2.11.0 \ + --hash=sha256:21189da44d2e3d027b08c7a920ba4454b8b7d6d30ae7e64d9de11dbe946d4faa +openpyxl==3.1.5 \ + --hash=sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2 +opentelemetry-api==1.34.1 \ + --hash=sha256:b7df4cb0830d5a6c29ad0c0691dbae874d8daefa934b8b1d642de48323d32a8c +optree==0.17.0 \ + --hash=sha256:aa963de4146fa1b5cdffb479d324262f245c957df0bb9a9b37f6fd559d027acc +optuna==4.2.1 \ + --hash=sha256:6d38199013441d3f70fac27136e05c0188c5f4ec3848db708ac311cbdeb30dbf +orjson==3.11.4 \ + --hash=sha256:0a54d6635fa3aaa438ae32e8570b9f0de36f3f6562c308d2a2a452e8b0592db1 +ormsgpack==1.12.0 \ + --hash=sha256:4e418256c5d8622b8bc92861936f7c6a0131355e7bcad88a42102ae8227f8a1c +outcome==1.3.0.post0 \ + --hash=sha256:e771c5ce06d1415e356078d3bdd68523f284b4ce5419828922b6871e65eda82b +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pandas==2.3.3 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 +pandocfilters==1.5.1 \ + --hash=sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc +papermill==2.6.0 \ + --hash=sha256:0f09da6ef709f3f14dde77cb1af052d05b14019189869affff374c9e612f2dd5 +parso==0.8.5 \ + --hash=sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887 +partd==1.4.2 \ + --hash=sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f +pathspec==0.12.1 \ + --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +patsy==1.0.1 \ + --hash=sha256:751fb38f9e97e62312e921a1954b81e1bb2bcda4f5eeabaf94db251ee791509c +pep8==1.7.1 \ + --hash=sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee +pexpect==4.9.0 \ + --hash=sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523 +pg8000==1.31.5 \ + --hash=sha256:0af2c1926b153307639868d2ee5cef6cd3a7d07448e12736989b10e1d491e201 +pickleshare==0.7.5 \ + --hash=sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56 +pillow==12.0.0 \ + --hash=sha256:8dc232e39d409036af549c86f24aed8273a40ffa459981146829a324e0848b4b +pip==25.3 \ + --hash=sha256:9655943313a94722b7774661c21049070f6bbb0a1516bf02f7c8d5d9201514cd +pipdeptree==2.30.0 \ + --hash=sha256:e08ee7eb8152c0d67aee308c8477a489ab0af1a4aafe988d9d2d9998f78a24a6 +platformdirs==4.5.0 \ + --hash=sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3 +plotly==6.5.0 \ + --hash=sha256:5ac851e100367735250206788a2b1325412aa4a4917a4fe3e6f0bc5aa6f3d90a +plotnine==0.15.2 \ + --hash=sha256:7dc508bc51625b9b9f945e274d8ee4463cf30b280749190a5b707e6828003fa6 +pluggy==1.5.0 \ + --hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669 +ply==3.11 \ + --hash=sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce +polars==1.36.1 \ + --hash=sha256:853c1bbb237add6a5f6d133c15094a9b727d66dd6a4eb91dbb07cdb056b2b8ef +polars-runtime-32==1.36.1 \ + --hash=sha256:cc17101f28c9a169ff8b5b8d4977a3683cd403621841623825525f440b564cf0 +prettytable==3.16.0 \ + --hash=sha256:b5eccfabb82222f5aa46b798ff02a8452cf530a352c31bddfa29be41242863aa +prince==0.16.2 \ + --hash=sha256:75c03afae5600c0b0f1bfd6e79d33ee8884fca198825d4242ba34efe9a43d848 +priority==2.0.0 \ + --hash=sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa +prometheus-client==0.21.1 \ + --hash=sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301 +prompt-toolkit==3.0.52 \ + --hash=sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955 +propcache==0.4.1 \ + --hash=sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153 +psutil==7.1.1 \ + --hash=sha256:9b4f17c5f65e44f69bd3a3406071a47b79df45cf2236d1f717970afcb526bcd3 +psycopg2==2.9.11 \ + --hash=sha256:f10a48acba5fe6e312b891f290b4d2ca595fc9a06850fe53320beac353575578 +psygnal==0.15.0 \ + --hash=sha256:6034cacebd252776743450be62f25df323f8cb4ed7b01a46fc4dcf540baa64a6 +ptyprocess==0.7.0 \ + --hash=sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35 +pure-eval==0.2.3 \ + --hash=sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0 +pyasn1==0.6.1 \ + --hash=sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 +pyasn1-modules==0.4.1 \ + --hash=sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd +pybind11==3.0.0 \ + --hash=sha256:7c5cac504da5a701b5163f0e6a7ba736c713a096a5378383c5b4b064b753f607 +pycodestyle==2.12.0 \ + --hash=sha256:949a39f6b86c3e1515ba1787c2022131d165a8ad271b11370a8819aa070269e4 +pycparser==2.23 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 +pydantic==2.12.5 \ + --hash=sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +pydantic-ai-slim==1.12.0 \ + --hash=sha256:3007c93e4c0b28f6bd87ebe0eec3cc27b2c7639a26d806ab09d9a6944ec5872a +pydantic-core==2.41.5 \ + --hash=sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf +pydantic-evals==1.12.0 \ + --hash=sha256:01e458f7acbb4ab5f386a35dfd98356a4d055e505f36bb235988abba1833e0b3 +pydantic-graph==1.12.0 \ + --hash=sha256:6ea55fa40c4494935400dc820d414a409210baf61371062910b16385141adcc0 +pydantic-settings==2.11.0 \ + --hash=sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +pydocstyle==6.3.0 \ + --hash=sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019 +pydot==4.0.1 \ + --hash=sha256:869c0efadd2708c0be1f916eb669f3d664ca684bc57ffb7ecc08e70d5e93fee6 +pydub==0.25.1 \ + --hash=sha256:65617e33033874b59d87db603aa1ed450633288aefead953b30bded59cb599a6 +pyerfa==2.0.1.5 \ + --hash=sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0 +pyflakes==3.2.0 \ + --hash=sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a +pygithub==2.6.1 \ + --hash=sha256:6f2fa6d076ccae475f9fc392cc6cdbd54db985d4f69b8833a28397de75ed6ca3 +pygments==2.19.1 \ + --hash=sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c +pyjwt==2.10.1 \ + --hash=sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb +pylint==3.3.8 \ + --hash=sha256:7ef94aa692a600e82fabdd17102b73fc226758218c97473c7ad67bd4cb905d83 +pylint-venv==3.0.4 \ + --hash=sha256:31006a3df398f58f962c9e5620e756b284e8b2bc490594ce5ee5da41920cb32c +pyls-spyder==0.4.0 \ + --hash=sha256:1505d975f866a343d0554b6dab41b53717f4b4bc6df450dfd7d48f889fe450b9 +pymongo==4.15.3 \ + --hash=sha256:9df2db6bd91b07400879b6ec89827004c0c2b55fc606bb62db93cafb7677c340 +pympler==1.1 \ + --hash=sha256:5b223d6027d0619584116a0cbc28e8d2e378f7a79c1e5e024f9ff3b673c58506 +pynacl==1.6.1 \ + --hash=sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21 +pynndescent==0.5.13 \ + --hash=sha256:69aabb8f394bc631b6ac475a1c7f3994c54adf3f51cd63b2730fefba5771b949 +pyodbc==5.3.0 \ + --hash=sha256:58635a1cc859d5af3f878c85910e5d7228fe5c406d4571bffcdd281375a54b39 +pyogrio==0.12.1 \ + --hash=sha256:f1d8d8a2fea3781dc2a05982c050259261ebc0f6c5e03732d6d79d582adf9363 +pyomo==6.9.5 \ + --hash=sha256:60326f7d3143ee7d0f5c5c4a3cbf871b53e08cc6c2b0c9e6d25568880233472f +pypandoc==1.15 \ + --hash=sha256:4ededcc76c8770f27aaca6dff47724578428eca84212a31479403a9731fc2b16 +pyparsing==3.2.5 \ + --hash=sha256:e38a4f02064cf41fe6593d328d0512495ad1f3d8a91c4f73fc401b3079a59a5e +pypdf==5.6.0 \ + --hash=sha256:ca6bf446bfb0a2d8d71d6d6bb860798d864c36a29b3d9ae8d7fc7958c59f88e7 +pyperclip==1.11.0 \ + --hash=sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273 +pyproj==3.7.2 \ + --hash=sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +pyqt5==5.15.11 \ + --hash=sha256:bdde598a3bb95022131a5c9ea62e0a96bd6fb28932cc1619fd7ba211531b7517 +pyqt5-qt5==5.15.2 \ + --hash=sha256:750b78e4dba6bdf1607febedc08738e318ea09e9b10aea9ff0d73073f11f6962 +pyqt5-sip==12.17.1 \ + --hash=sha256:aaa33232cc80793d14fdb3b149b27eec0855612ed66aad480add5ac49b9cee63 +pyqtgraph==0.14.0 \ + --hash=sha256:7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5 +pyqtwebengine==5.15.7 \ + --hash=sha256:bd5e8c426d6f6b352cd15800d64a89b2a4a11e098460b818c7bdcf5e5612e44f +pyqtwebengine-qt5==5.15.2 \ + --hash=sha256:24231f19e1595018779977de6722b5c69f3d03f34a5f7574ff21cd1e764ef76d +pyserial==3.5 \ + --hash=sha256:c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0 +pysocks==1.7.1 \ + --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 +pyspnego==0.11.2 \ + --hash=sha256:74abc1fb51e59360eb5c5c9086e5962174f1072c7a50cf6da0bda9a4bcfdfbd4 +pytest==8.4.1 \ + --hash=sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7 +python-barcode==0.16.1 \ + --hash=sha256:5776567478c9a0dae473374bb86631ba0b5ea99aaf302763b364e367ac51f367 +python-dateutil==2.8.2 \ + --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dotenv==1.1.0 \ + --hash=sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d +python-json-logger==3.3.0 \ + --hash=sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7 +python-lsp-black==2.0.0 \ + --hash=sha256:d5efdee45f5fa9e5241f5d4d396cd46127f45c85817916b1fd92c2986652bf7e +python-lsp-jsonrpc==1.1.2 \ + --hash=sha256:7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c +python-lsp-ruff==2.3.0 \ + --hash=sha256:b858b698fbaff5670f6d5e6c66afc632908f78639d73dc85dedd33ae5fdd204f +python-lsp-server==1.13.2 \ + --hash=sha256:695dbf25a2473494ae31b1b2eefb83341915f6f77bf96d2564da5bcbbf32f7f0 +python-multipart==0.0.20 \ + --hash=sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104 +python-slugify==8.0.4 \ + --hash=sha256:276540b79961052b66b7d116620b36518847f52d5fd9e3a70164fc8c50faa6b8 +pythonqwt==0.15.0 \ + --hash=sha256:52a5468c65ad7da7a946a4b7f2bce49b71b1d2f75d1cab710ea8313df1e2c407 +pytokens==0.3.0 \ + --hash=sha256:95b2b5eaf832e469d141a378872480ede3f251a5a5041b8ec6e581d3ac71bbf3 +pytoolconfig==1.3.1 \ + --hash=sha256:5d8cea8ae1996938ec3eaf44567bbc5ef1bc900742190c439a44a704d6e1b62b +pytz==2025.2 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 +pyuca==1.2 \ + --hash=sha256:abaa12e1bd2c7c68ca8396ff8383bc0654a739cef3ae68fd7af58bf29af0a91e +pyusb==1.3.1 \ + --hash=sha256:bf9b754557af4717fe80c2b07cc2b923a9151f5c08d17bdb5345dac09d6a0430 +pyvisa==1.15.0 \ + --hash=sha256:e3ac8d9e863fbdbbe7e6d4d91401bceb7914d1c4a558a89b2cc755789f1e8309 +pywavelets==1.9.0 \ + --hash=sha256:7e57792bde40e331d6cc65458e5970fd814dba18cfc4e9add9d051e901a7b7c7 +pywin32==311 \ + --hash=sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87 +pywin32-ctypes==0.2.3 \ + --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8 +pywinpty==3.0.2 \ + --hash=sha256:28297cecc37bee9f24d8889e47231972d6e9e84f7b668909de54f36ca785029a +pyyaml==6.0.3 \ + --hash=sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac +pyzmq==27.1.0 \ + --hash=sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf +qdarkstyle==3.2.3 \ + --hash=sha256:ea980ee426d594909cf1058306832af71ff6cbad6f69237b036d1550635aefbc +qrcode==8.2 \ + --hash=sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f +qstylizer==0.2.4 \ + --hash=sha256:8f384dfe86f9edb0bb596b93663a51f124f0794b94fd54057cc7cf9cea59fb6f +qtawesome==1.4.0 \ + --hash=sha256:a4d689fa071c595aa6184171ce1f0f847677cb8d2db45382c43129f1d72a3d93 +qtconsole==5.7.0 \ + --hash=sha256:42ff0734269a77129097131ce96059f97dc864e6e061d7ed919609ccfe18dd22 +qtpy==2.4.3 \ + --hash=sha256:72095afe13673e017946cc258b8d5da43314197b741ed2890e563cf384b51aa1 +quantecon==0.10.1 \ + --hash=sha256:548de0695468e74f9a664926e601ce35255c9e05a638cdf12738e2be4e0ecef4 +quart==0.20.0 \ + --hash=sha256:003c08f551746710acb757de49d9b768986fd431517d0eb127380b656b98b8f1 +rapidfuzz==3.14.3 \ + --hash=sha256:f3d15d8527e2b293e38ce6e437631af0708df29eafd7c9fc48210854c94472f9 +readme-renderer==44.0 \ + --hash=sha256:2fbca89b81a08526aadf1357a8c2ae889ec05fb03f5da67f9769c9a592166151 +redis==5.2.1 \ + --hash=sha256:ee7e1056b9aea0f04c6c2ed59452947f34c4940ee025f5dd83e6a6418b6989e4 +referencing==0.37.0 \ + --hash=sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231 +regex==2025.10.23 \ + --hash=sha256:0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796 +reportlab==4.4.2 \ + --hash=sha256:58e11be387457928707c12153b7e41e52533a5da3f587b15ba8f8fd0805c6ee2 +requests==2.32.5 \ + --hash=sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6 +requests-ntlm==1.3.0 \ + --hash=sha256:4c7534a7d0e482bb0928531d621be4b2c74ace437e88c5a357ceb7452d25a510 +requests-toolbelt==1.0.0 \ + --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06 +rfc3339-validator==0.1.4 \ + --hash=sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa +rfc3986==2.0.0 \ + --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd +rfc3986-validator==0.1.1 \ + --hash=sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9 +rich==14.1.0 \ + --hash=sha256:536f5f1785986d6dbdea3c75205c473f970777b4a0d6c6dd1b696aa05a3fa04f +roman-numerals-py==3.1.0 \ + --hash=sha256:9da2ad2fb670bcf24e81070ceb3be72f6c11c440d73bd579fbeca1e9f330954c +rope==1.14.0 \ + --hash=sha256:00a7ea8c0c376fc0b053b2f2f8ef3bfb8b50fecf1ebf3eb80e4f8bd7f1941918 +rpds-py==0.27.1 \ + --hash=sha256:a6e57b0abfe7cc513450fcf529eb486b6e4d3f8aee83e92eb5f1ef848218d456 +rsa==4.9.1 \ + --hash=sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762 +rtree==1.4.0 \ + --hash=sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4 +ruff==0.14.7 \ + --hash=sha256:e17a20ad0d3fad47a326d773a042b924d3ac31c6ca6deb6c72e9e6b5f661a7c6 +rx==3.2.0 \ + --hash=sha256:922c5f4edb3aa1beaa47bf61d65d5380011ff6adcd527f26377d05cb73ed8ec8 +scikit-learn==1.8.0 \ + --hash=sha256:56079a99c20d230e873ea40753102102734c5953366972a71d5cb39a32bc40c6 +scipy==1.16.3 \ + --hash=sha256:e5d42a9472e7579e473879a1990327830493a7047506d58d73fc429b84c1d49d +scramp==1.4.5 \ + --hash=sha256:50e37c464fc67f37994e35bee4151e3d8f9320e9c204fca83a5d313c121bbbe7 +scs==3.2.9 \ + --hash=sha256:feb0a7e29bd26285270a9882d1bdd4b1e981a4e9cdb8eaee5f967a47bb2882ff +seaborn==0.13.2 \ + --hash=sha256:636f8336facf092165e27924f223d3c62ca560b1f2bb5dff7ab7fad265361987 +send2trash==1.8.3 \ + --hash=sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +shapely==2.1.2 \ + --hash=sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c +shellingham==1.5.4 \ + --hash=sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +simplejson==3.20.2 \ + --hash=sha256:3b6bb7fb96efd673eac2e4235200bfffdc2353ad12c54117e1e4e2fc485ac017 +simpy==4.1.1 \ + --hash=sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88 +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 +skrub==0.6.2 \ + --hash=sha256:c4478caf511f128ff60469e77e4f1b3a20f9b391b69765ad73f28d794256270f +sniffio==1.3.1 \ + --hash=sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +snowballstemmer==3.0.1 \ + --hash=sha256:6cd7b3897da8d6c9ffb968a6781fa6532dce9c3618a4b127d920dab764a19064 +sortedcontainers==2.4.0 \ + --hash=sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0 +sounddevice==0.5.3 \ + --hash=sha256:f55ad20082efc2bdec06928e974fbcae07bc6c405409ae1334cefe7d377eb687 +soundfile==0.13.1 \ + --hash=sha256:1e70a05a0626524a69e9f0f4dd2ec174b4e9567f4d8b6c11d38b5c289be36ee9 +soupsieve==2.8 \ + --hash=sha256:0cc76456a30e20f5d7f2e14a98a4ae2ee4e5abdc7c5ea0aafe795f344bc7984c +sphinx==8.2.3 \ + --hash=sha256:4405915165f13521d875a8c29c8970800a0141c14cc5416a38feca4ea5d9b9c3 +sphinx-rtd-theme==3.0.2 \ + --hash=sha256:422ccc750c3a3a311de4ae327e82affdaf59eb695ba4936538552f3b00f4ee13 +sphinxcontrib-applehelp==2.0.0 \ + --hash=sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5 +sphinxcontrib-devhelp==2.0.0 \ + --hash=sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2 +sphinxcontrib-htmlhelp==2.1.0 \ + --hash=sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8 +sphinxcontrib-jquery==4.1 \ + --hash=sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae +sphinxcontrib-jsmath==1.0.1 \ + --hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 +sphinxcontrib-qthelp==2.0.0 \ + --hash=sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb +sphinxcontrib-serializinghtml==2.0.0 \ + --hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 +spyder==6.1.1 \ + --hash=sha256:3ad390fbb670c82e17256d281f3d7d0420ce9b9f1459b8d894b6ec18bd5b6e77 +spyder-kernels==3.1.2 \ + --hash=sha256:3c30018732b5dc9b87de4d223195469d7699a761e87a6ed5a1321cd2b70f8c1e +sqlalchemy==2.0.44 \ + --hash=sha256:19de7ca1246fbef9f9d1bff8f1ab25641569df226364a0e40457dc5457c54b05 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sqlite-fts4==1.0.3 \ + --hash=sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f +sqlite-utils==3.38 \ + --hash=sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9 +sqlparse==0.5.3 \ + --hash=sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +squarify==0.4.4 \ + --hash=sha256:d7597724e29d48aa14fd2f551060d6b09e1f0a67e4cd3ea329fe03b4c9a56f11 +sse-starlette==3.0.2 \ + --hash=sha256:16b7cbfddbcd4eaca11f7b586f3b8a080f1afe952c15813455b162edea619e5a +sspilib==0.4.0 \ + --hash=sha256:432076f90099eb3ca339795af709afe755e85b039fb5b86fac7e906e2a84fb94 +stack-data==0.6.3 \ + --hash=sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695 +starlette==0.50.0 \ + --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca +statsmodels==0.14.6 \ + --hash=sha256:151b73e29f01fe619dbce7f66d61a356e9d1fe5e906529b78807df9189c37721 +superqt==0.7.6 \ + --hash=sha256:6961833acd67df62b12918ded9945c5e7b17d75452c0159a121d799d65e2f0c2 +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 +tabulate==0.9.0 \ + --hash=sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f +tenacity==9.1.2 \ + --hash=sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138 +termcolor==3.1.0 \ + --hash=sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa +terminado==0.18.1 \ + --hash=sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0 +text-unidecode==1.3 \ + --hash=sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8 +textdistance==4.6.3 \ + --hash=sha256:0cb1b2cc8e3339ddc3e0f8c870e49fb49de6ecc42a718917308b3c971f34aa56 +thefuzz==0.22.1 \ + --hash=sha256:59729b33556850b90e1093c4cf9e618af6f2e4c985df193fdf3c5b5cf02ca481 +threadpoolctl==3.6.0 \ + --hash=sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb +three-merge==0.1.1 \ + --hash=sha256:dd219f4696aa0bbec6099ac3528b4de0450ff9bde862dd8f6d6f52e745f83464 +tiktoken==0.12.0 \ + --hash=sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3 +tinycss2==1.4.0 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 +tokenizers==0.22.1 \ + --hash=sha256:65fd6e3fb11ca1e78a6a93602490f134d1fdeb13bcef99389d5102ea318ed138 +tomli-w==1.2.0 \ + --hash=sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90 +tomlkit==0.13.2 \ + --hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde +toolz==1.0.0 \ + --hash=sha256:292c8f1c4e7516bf9086f8850935c799a874039c8bcf959d47b600e4c44a6236 +tornado==6.5.3 \ + --hash=sha256:ba4b513d221cc7f795a532c1e296f36bcf6a60e54b15efd3f092889458c69af1 +tqdm==4.67.1 \ + --hash=sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2 +traitlets==5.14.3 \ + --hash=sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f +traittypes==0.2.1 \ + --hash=sha256:1340af133810b6eee1a2eb2e988f862b0d12b6c2d16f282aaf3207b782134c2e +trio==0.32.0 \ + --hash=sha256:4ab65984ef8370b79a76659ec87aa3a30c5c7c83ff250b4de88c29a8ab6123c5 +trove-classifiers==2025.9.11.17 \ + --hash=sha256:5d392f2d244deb1866556457d6f3516792124a23d1c3a463a2e8668a5d1c15dd +twine==6.1.0 \ + --hash=sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384 +typer==0.15.2 \ + --hash=sha256:46a499c6107d645a9c13f7ee46c5d5096cae6f5fc57dd11eccbbb9ae3e44ddfc +typer-slim==0.20.0 \ + --hash=sha256:f42a9b7571a12b97dddf364745d29f12221865acef7a2680065f9bb29c7dc89d +types-python-dateutil==2.9.0.20250822 \ + --hash=sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc +types-requests==2.32.0.20250328 \ + --hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +typing-inspection==0.4.2 \ + --hash=sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 +tzlocal==5.3.1 \ + --hash=sha256:eb1a66c3ef5847adf7a834f1be0800581b683b5608e74f86ecbcef8ab91bb85d +ujson==5.11.0 \ + --hash=sha256:849e65b696f0d242833f1df4182096cedc50d414215d1371fca85c541fbff629 +umap-learn==0.5.9.post2 \ + --hash=sha256:fbe51166561e0e7fab00ef3d516ac2621243b8d15cf4bef9f656d701736b16a0 +uncertainties==3.2.3 \ + --hash=sha256:313353900d8f88b283c9bad81e7d2b2d3d4bcc330cbace35403faaed7e78890a +uri-template==1.3.0 \ + --hash=sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363 +urllib3==2.5.0 \ + --hash=sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc +uuid-utils==0.12.0 \ + --hash=sha256:9598e7c9da40357ae8fffc5d6938b1a7017f09a1acbcc95e14af8c65d48c655a +uvicorn==0.38.0 \ + --hash=sha256:48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02 +vega-datasets==0.9.0 \ + --hash=sha256:3d7c63917be6ca9b154b565f4779a31fedce57b01b5b9d99d8a34a7608062a1d +waitress==3.0.2 \ + --hash=sha256:c56d67fd6e87c2ee598b76abdd4e96cfad1f24cacdea5078d382b1f9d7b5ed2e +watchdog==6.0.0 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 +wcwidth==0.2.13 \ + --hash=sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859 +webcolors==24.11.1 \ + --hash=sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9 +webencodings==0.5.1 \ + --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 +websocket-client==1.9.0 \ + --hash=sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef +websockets==15.0.1 \ + --hash=sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f +werkzeug==3.1.3 \ + --hash=sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e +whatthepatch==1.0.7 \ + --hash=sha256:1b6f655fd31091c001c209529dfaabbabdbad438f5de14e3951266ea0fc6e7ed +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +widgetsnbextension==4.0.14 \ + --hash=sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575 +wrapt==2.0.1 \ + --hash=sha256:4ae879acc449caa9ed43fc36ba08392b9412ee67941748d31d94e3cedb36628c +wsproto==1.2.0 \ + --hash=sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736 +xarray==2025.11.0 \ + --hash=sha256:986893b995de4a948429356a3897d78e634243c1cac242bd59d03832b9d72dd1 +xlsxwriter==3.2.9 \ + --hash=sha256:9a5db42bc5dff014806c58a20b9eae7322a134abb6fce3c92c181bfb275ec5b3 +xxhash==3.6.0 \ + --hash=sha256:39be8e4e142550ef69629c9cd71b88c90e9a5db703fecbcf265546d9536ca4ad +xyzservices==2025.4.0 \ + --hash=sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9 +yapf==0.43.0 \ + --hash=sha256:224faffbc39c428cb095818cf6ef5511fdab6f7430a10783fdfb292ccf2852ca +yarl==1.22.0 \ + --hash=sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79 +yt-dlp==2025.9.26 \ + --hash=sha256:36f5fbc153600f759abd48d257231f0e0a547a115ac7ffb05d5b64e5c7fdf8a2 +zipp==3.23.0 \ + --hash=sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e +zstandard==0.25.0 \ + --hash=sha256:c19bcdd826e95671065f8692b5a4aa95c52dc7a02a4c5a0cac46deb879a017a2 diff --git a/winpython/portable/cycle_2025_05/requir.64-3_15_0_0dot.txt b/winpython/portable/cycle_2025_05/requir.64-3_15_0_0dot.txt new file mode 100644 index 00000000..dc862046 --- /dev/null +++ b/winpython/portable/cycle_2025_05/requir.64-3_15_0_0dot.txt @@ -0,0 +1,18 @@ +build==1.3.0 \ + --hash=sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +colorama==0.4.6 \ + --hash=sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +pyproject-hooks==1.2.0 \ + --hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +sqlite-bro==0.13.1 \ + --hash=sha256:c26033b0af133049ca578b5fd30b2372f002e7ff934b39774aa4d2da7638c23d +sv-ttk==2.6.0 \ + --hash=sha256:4319c52edf2e14732fe84bdc9788e26f9e9a1ad79451ec0f89f0120ffc8105d9 +wheel==0.45.1 \ + --hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248 +wppm==17.2.20250823 \ + --hash=sha256:0945411b12eaf6da134a9d8662a4afb2b25e129dd34fc2f6ef76ee62d61411c3 diff --git a/winpython/portable/launchers_building/build_my_launchers.bat b/winpython/portable/launchers_building/build_my_launchers.bat new file mode 100644 index 00000000..2585eb5c --- /dev/null +++ b/winpython/portable/launchers_building/build_my_launchers.bat @@ -0,0 +1,37 @@ +rem build launchers in WINDOWS and CONSOLE version +rem tweaked from @datalab-winpython provided code in \launchers_src +rem @datalab-winpython licence is in \launchers_src\LICENCE +@echo off + +set VCVARS_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat" + +rem pick the right ones and rename them in launchers_final +set do_launcher=%~dp0launchers_src\build_one_launcher.bat +set do_launcher_original=%~dp0launchers_src_original\build_one_launcher.bat + + +echo displace this pause if you want to re-build more +pause +rem exit + + +:: WINDOWS launchers with Drag & Drop +call %do_launcher% "python.ico" "winidle.bat" "IDLE (Python GUI)" WINDOWS proposed +call %do_launcher% "spyder.ico" "winspyder.bat" "Spyder" WINDOWS proposed + +:: CONSOLE launchers with Drag & Drop +call %do_launcher% "jupyter.ico" "winipython_notebook.bat" "Jupyter Notebook" CONSOLE proposed +call %do_launcher% "jupyter.ico" "winjupyter_lab.bat" "Jupyter Lab" CONSOLE proposed +call %do_launcher% "winpython.ico" "wpcp.bat" "WinPython Control Panel" CONSOLE proposed + +:: WINDOWS launchers with no Drag & Drop +call %do_launcher_original% "powershell.ico" "cmd_ps.bat" "WinPython Powershell Prompt" WINDOWS proposed +call %do_launcher_original% "spyder_reset.ico" "spyder_reset.bat" "Spyder reset" WINDOWS proposed +call %do_launcher_original% "code.ico" "winvscode.bat" "VS Code" WINDOWS proposed + +:: CONSOLE launchers with no Drag & Drop +call %do_launcher_original% "cmd.ico" "cmd.bat" "WinPython Command Prompt" CONSOLE proposed +call %do_launcher_original% "python.ico" "winpython.bat" "WinPython Interpreter" CONSOLE proposed + +pause + diff --git a/portable/icons/cmd.ico b/winpython/portable/launchers_building/icons/cmd.ico similarity index 100% rename from portable/icons/cmd.ico rename to winpython/portable/launchers_building/icons/cmd.ico diff --git a/portable/icons/code.ico b/winpython/portable/launchers_building/icons/code.ico similarity index 100% rename from portable/icons/code.ico rename to winpython/portable/launchers_building/icons/code.ico diff --git a/portable/icons/ijulia.ico b/winpython/portable/launchers_building/icons/ijulia.ico similarity index 100% rename from portable/icons/ijulia.ico rename to winpython/portable/launchers_building/icons/ijulia.ico diff --git a/portable/icons/install.ico b/winpython/portable/launchers_building/icons/install.ico similarity index 100% rename from portable/icons/install.ico rename to winpython/portable/launchers_building/icons/install.ico diff --git a/portable/icons/ipython.ico b/winpython/portable/launchers_building/icons/ipython.ico similarity index 100% rename from portable/icons/ipython.ico rename to winpython/portable/launchers_building/icons/ipython.ico diff --git a/portable/icons/julia.ico b/winpython/portable/launchers_building/icons/julia.ico similarity index 100% rename from portable/icons/julia.ico rename to winpython/portable/launchers_building/icons/julia.ico diff --git a/portable/icons/jupyter.ico b/winpython/portable/launchers_building/icons/jupyter.ico similarity index 100% rename from portable/icons/jupyter.ico rename to winpython/portable/launchers_building/icons/jupyter.ico diff --git a/winpython/portable/launchers_building/icons/powershell.ico b/winpython/portable/launchers_building/icons/powershell.ico new file mode 100644 index 00000000..ad1e1489 Binary files /dev/null and b/winpython/portable/launchers_building/icons/powershell.ico differ diff --git a/portable/icons/python.ico b/winpython/portable/launchers_building/icons/python.ico similarity index 100% rename from portable/icons/python.ico rename to winpython/portable/launchers_building/icons/python.ico diff --git a/winpython/portable/launchers_building/icons/spyder.ico b/winpython/portable/launchers_building/icons/spyder.ico new file mode 100644 index 00000000..8b051eab Binary files /dev/null and b/winpython/portable/launchers_building/icons/spyder.ico differ diff --git a/winpython/portable/launchers_building/icons/spyder_reset.ico b/winpython/portable/launchers_building/icons/spyder_reset.ico new file mode 100644 index 00000000..61edabdc Binary files /dev/null and b/winpython/portable/launchers_building/icons/spyder_reset.ico differ diff --git a/portable/icons/terminal.ico b/winpython/portable/launchers_building/icons/terminal.ico similarity index 100% rename from portable/icons/terminal.ico rename to winpython/portable/launchers_building/icons/terminal.ico diff --git a/portable/icons/uninstall.ico b/winpython/portable/launchers_building/icons/uninstall.ico similarity index 100% rename from portable/icons/uninstall.ico rename to winpython/portable/launchers_building/icons/uninstall.ico diff --git a/winpython/portable/launchers_building/icons/winpython.ico b/winpython/portable/launchers_building/icons/winpython.ico new file mode 100644 index 00000000..3b8d6a69 Binary files /dev/null and b/winpython/portable/launchers_building/icons/winpython.ico differ diff --git a/portable/images/banner.bmp b/winpython/portable/launchers_building/images/banner.bmp similarity index 100% rename from portable/images/banner.bmp rename to winpython/portable/launchers_building/images/banner.bmp diff --git a/portable/images/banner.pdn b/winpython/portable/launchers_building/images/banner.pdn similarity index 100% rename from portable/images/banner.pdn rename to winpython/portable/launchers_building/images/banner.pdn diff --git a/portable/images/installer_logo.bmp b/winpython/portable/launchers_building/images/installer_logo.bmp similarity index 100% rename from portable/images/installer_logo.bmp rename to winpython/portable/launchers_building/images/installer_logo.bmp diff --git a/portable/images/splash.bmp b/winpython/portable/launchers_building/images/splash.bmp similarity index 100% rename from portable/images/splash.bmp rename to winpython/portable/launchers_building/images/splash.bmp diff --git a/portable/images/splash.pdn b/winpython/portable/launchers_building/images/splash.pdn similarity index 100% rename from portable/images/splash.pdn rename to winpython/portable/launchers_building/images/splash.pdn diff --git a/portable/images/win.bmp b/winpython/portable/launchers_building/images/win.bmp similarity index 100% rename from portable/images/win.bmp rename to winpython/portable/launchers_building/images/win.bmp diff --git a/portable/images/win.pdn b/winpython/portable/launchers_building/images/win.pdn similarity index 100% rename from portable/images/win.pdn rename to winpython/portable/launchers_building/images/win.pdn diff --git a/portable/images/winpython_title.svg b/winpython/portable/launchers_building/images/winpython_title.svg similarity index 100% rename from portable/images/winpython_title.svg rename to winpython/portable/launchers_building/images/winpython_title.svg diff --git a/portable/images/winpython_title_portrait.svg b/winpython/portable/launchers_building/images/winpython_title_portrait.svg similarity index 100% rename from portable/images/winpython_title_portrait.svg rename to winpython/portable/launchers_building/images/winpython_title_portrait.svg diff --git a/winpython/portable/launchers_building/launchers_final_original/IDLE (Python GUI).exe b/winpython/portable/launchers_building/launchers_final_original/IDLE (Python GUI).exe new file mode 100644 index 00000000..c1e0c9dc Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/IDLE (Python GUI).exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/Jupyter Lab.exe b/winpython/portable/launchers_building/launchers_final_original/Jupyter Lab.exe new file mode 100644 index 00000000..98bb8bde Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/Jupyter Lab.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/Jupyter Notebook.exe b/winpython/portable/launchers_building/launchers_final_original/Jupyter Notebook.exe new file mode 100644 index 00000000..5d59af59 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/Jupyter Notebook.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/Spyder reset.exe b/winpython/portable/launchers_building/launchers_final_original/Spyder reset.exe new file mode 100644 index 00000000..21250f98 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/Spyder reset.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/Spyder.exe b/winpython/portable/launchers_building/launchers_final_original/Spyder.exe new file mode 100644 index 00000000..43874aa7 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/Spyder.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/VS Code.exe b/winpython/portable/launchers_building/launchers_final_original/VS Code.exe new file mode 100644 index 00000000..225decb4 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/VS Code.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/WinPython Command Prompt.exe b/winpython/portable/launchers_building/launchers_final_original/WinPython Command Prompt.exe new file mode 100644 index 00000000..e4e824c5 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/WinPython Command Prompt.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/WinPython Control Panel.exe b/winpython/portable/launchers_building/launchers_final_original/WinPython Control Panel.exe new file mode 100644 index 00000000..5795bf9c Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/WinPython Control Panel.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/WinPython Interpreter.exe b/winpython/portable/launchers_building/launchers_final_original/WinPython Interpreter.exe new file mode 100644 index 00000000..dfa43135 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/WinPython Interpreter.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_original/WinPython Powershell Prompt.exe b/winpython/portable/launchers_building/launchers_final_original/WinPython Powershell Prompt.exe new file mode 100644 index 00000000..d4512f32 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_original/WinPython Powershell Prompt.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI).exe b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI).exe new file mode 100644 index 00000000..65523199 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI).exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_2025-05-09_not_ok.exe b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_2025-05-09_not_ok.exe new file mode 100644 index 00000000..01eed2ce Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_2025-05-09_not_ok.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_20250401.exe b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_20250401.exe new file mode 100644 index 00000000..c1e0c9dc Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/IDLE (Python GUI)_20250401.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Lab.exe b/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Lab.exe new file mode 100644 index 00000000..93003fcb Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Lab.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Notebook.exe b/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Notebook.exe new file mode 100644 index 00000000..28fdbea3 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/Jupyter Notebook.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/Spyder reset.exe b/winpython/portable/launchers_building/launchers_final_proposed/Spyder reset.exe new file mode 100644 index 00000000..0baf4ab3 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/Spyder reset.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/Spyder.exe b/winpython/portable/launchers_building/launchers_final_proposed/Spyder.exe new file mode 100644 index 00000000..93b1a050 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/Spyder.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/Spyder_2025-05-08_no_drag_and_drop.exe b/winpython/portable/launchers_building/launchers_final_proposed/Spyder_2025-05-08_no_drag_and_drop.exe new file mode 100644 index 00000000..f3729201 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/Spyder_2025-05-08_no_drag_and_drop.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/VS Code.exe b/winpython/portable/launchers_building/launchers_final_proposed/VS Code.exe new file mode 100644 index 00000000..731f5f52 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/VS Code.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/WinPython Command Prompt.exe b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Command Prompt.exe new file mode 100644 index 00000000..6f1b6bd6 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Command Prompt.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel.exe b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel.exe new file mode 100644 index 00000000..72a57a67 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel_2025-05-09.exe b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel_2025-05-09.exe new file mode 100644 index 00000000..664ff576 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Control Panel_2025-05-09.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/WinPython Interpreter.exe b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Interpreter.exe new file mode 100644 index 00000000..e0cdbe77 Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Interpreter.exe differ diff --git a/winpython/portable/launchers_building/launchers_final_proposed/WinPython Powershell Prompt.exe b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Powershell Prompt.exe new file mode 100644 index 00000000..c6bda2eb Binary files /dev/null and b/winpython/portable/launchers_building/launchers_final_proposed/WinPython Powershell Prompt.exe differ diff --git a/portable/license.txt b/winpython/portable/launchers_building/launchers_final_proposed/license.txt similarity index 97% rename from portable/license.txt rename to winpython/portable/launchers_building/launchers_final_proposed/license.txt index 75f3c134..da461f3b 100644 --- a/portable/license.txt +++ b/winpython/portable/launchers_building/launchers_final_proposed/license.txt @@ -1,37 +1,37 @@ -Note ----- - -WinPython components are distributed as they were received from -their copyright holder, under their own copyright and/or license, -and without any linking with each other. - -WinPython software collection (i.e. the collection of software, -libraries and documents) is licensed under the terms of the -following license agreement. - - -WinPython License Agreement (MIT License) ------------------------------------------ - -Copyright (c) 2012 Pierre Raybaut, 2016+ WinPython team - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +Note +---- + +WinPython components are distributed as they were received from +their copyright holder, under their own copyright and/or license, +and without any linking with each other. + +WinPython software collection (i.e. the collection of software, +libraries and documents) is licensed under the terms of the +following license agreement. + + +WinPython License Agreement (MIT License) +----------------------------------------- + +Copyright (c) 2012 Pierre Raybaut, 2016+ WinPython team + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/winpython/portable/launchers_building/launchers_src/LICENSE b/winpython/portable/launchers_building/launchers_src/LICENSE new file mode 100644 index 00000000..b3fb976c --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src/LICENSE @@ -0,0 +1,63 @@ +DataLab-WinPython license terms +=============================== + +DataLab-WinPython is a Python distribution for Windows: +- Based on WinPython, a portable distribution of Python for Windows (see section I. below). +- Including DataLab, an open-source platform for signal and image processing (see section II. below). + +I. - WinPython License Agreement (MIT License) +---------------------------------------------- + +Copyright (c) 2012 Pierre Raybaut, 2016+ WinPython team + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +II. - DataLab License Agreement (BSD 3-Clause License) +------------------------------------------------------ + +Copyright (c) 2023, DataLab Platform Developers. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/winpython/portable/launchers_building/launchers_src/build_one_launcher.bat b/winpython/portable/launchers_building/launchers_src/build_one_launcher.bat new file mode 100644 index 00000000..c48374c4 --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src/build_one_launcher.bat @@ -0,0 +1,108 @@ +@echo on +set icon_name=%1 +set LAUNCH_TARGET=%2 +set launcher_name=%3 +set subsystem=%4 +set destination=%5 + +set icon_name=%icon_name:"=% +set LAUNCH_TARGET=%LAUNCH_TARGET:"=% +set launcher_name=%launcher_name:"=% +set subsystem=%subsystem:"=% + +set ROOT_PATH=%~dp0..\ +set SCRIPT_PATH=%~dp0 +set TEMPO_PATH=%ROOT_PATH%launchers_temp +set OUTPUT_DIR=%ROOT_PATH%launchers_%destination% + +set "ICON_FILE=%ROOT_PATH%icons\%icon_name%" +set LAUNCHER_EXE=%OUTPUT_DIR%\%launcher_name%.exe + + +:: Paths to template WINDOWS or CONSOLE +set SOURCE_FILE=%SCRIPT_PATH%launcher_template_%subsystem%.cpp +echo SOURCE_FILE=%SOURCE_FILE% + +set "RESOURCE_FILE=%TEMPO_PATH%\%icon_name%.rc" +set "RESOURCE_OBJ=%TEMPO_PATH%\%icon_name%.res" + + +:: create pDirectory if needed +if not exist "%OUTPUT_DIR%" mkdir "%OUTPUT_DIR%" +if not exist "%TEMPO_PATH%" mkdir "%TEMPO_PATH%" + +cd/d %TEMPO_PATH% + +:: Check if MSVC environment is already initialized +if not defined VSINSTALLDIR ( + echo Initializing MSVC environment... + call %VCVARS_PATH% + if errorlevel 1 ( + echo [ERROR] Failed to initialize MSVC environment. + exit /b 1 + ) +) + +@echo on + +:: Walk through .bat files in the current directory + echo Processing %icon_name%.. + :: Stonebig: Remove previous .exe file + echo launcher_exe_action del /q "%LAUNCHER_EXE%" + if exist "%LAUNCHER_EXE%" ( + move "%LAUNCHER_EXE%" "%LAUNCHER_EXE%.old.exe" + del /q "%LAUNCHER_EXE%.old.exe" + ) + :: Stonebig: Remove intermediate .res and.rc file + if exist "%RESOURCE_OBJ%" ( + move "%RESOURCE_OBJ%" "%RESOURCE_OBJ%.old.exe" + del /q "%RESOURCE_OBJ%.old.exe" + ) + if exist "%RESOURCE_FILE%" ( + move "%RESOURCE_FILE%" "%RESOURCE_FILE%.old.exe" + del /q "%RESOURCE_FILE%.old.exe" + ) + :: Remove intermediate .obj file + del /q "launcher_template_%subsystem%.obj" + + :: Check if the icon exists + if exist "%ICON_FILE%" ( + echo Icon found: "%ICON_FILE%" + ) else ( + echo No icon found for "%ICON_FILE%" stoping + pause + exit + ) + + + :: Create resource file + echo Creating resource file... + > "%RESOURCE_FILE%" echo IDI_ICON1 ICON "%ICON_FILE%" + :: Compile resource + echo Compiling resource... + rc /fo "%RESOURCE_OBJ%" "%RESOURCE_FILE%" + + :: Compile the launcher executable + echo Compiling launcher executable... + cl /EHsc /O2 /DUNICODE /W4 "%SOURCE_FILE%" "%RESOURCE_OBJ%" ^ + /Fe"%LAUNCHER_EXE%%" ^ + /DLAUNCH_TARGET=\"%LAUNCH_TARGET%\" ^ + User32.lib ^ + /link /SUBSYSTEM:%subsystem% + + + if errorlevel 1 ( + echo [ERROR] Failed to build launcher for %LAUNCH_TARGET% + exit /b 1 + ) + + if exist "%LAUNCHER_EXE%" ( + echo [SUCCESS] Launcher created: "%LAUNCHER_EXE%"" + ) else ( + echo [ERROR] Failed to build launcher "%LAUNCHER_EXE%" from "%icon_name%" to call "%LAUNCH_TARGET%" + exit /b 1 + ) + +echo All launchers processed. +rem exit /b 0 + diff --git a/winpython/portable/launchers_building/launchers_src/launcher_template_CONSOLE.cpp b/winpython/portable/launchers_building/launchers_src/launcher_template_CONSOLE.cpp new file mode 100644 index 00000000..1008d7f0 --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src/launcher_template_CONSOLE.cpp @@ -0,0 +1,100 @@ +/* +DataLab-WinPython launcher script +--------------------------------- + +Licensed under the terms of the BSD 3-Clause +(see ./LICENSE for details) + +*/ + +#include +#include + +int main() { + // Get the path to the current executable + wchar_t exePath[MAX_PATH]; + GetModuleFileNameW(NULL, exePath, MAX_PATH); + + // Determine the directory of the executable + std::wstring exeDir = exePath; + exeDir = exeDir.substr(0, exeDir.find_last_of(L"\\/")); + + // Get command line string and extract arguments + LPWSTR commandLine = GetCommandLineW(); + std::wstring args; + // If executable path is double quoted, skip the entire quoted section + if (commandLine[0] == L'"') { + LPWSTR closingQuote = wcschr(commandLine + 1, L'"'); + if (closingQuote) { + args = closingQuote + 1; + } + // For non-quoted path, skip to character after first space if it exists + } else { + LPWSTR spacePos = wcschr(commandLine, L' '); + if (spacePos) { + args = spacePos + 1; + } + } + // Strip leading whitespace + size_t args_start = args.find_first_not_of(L' '); + args = (args_start != std::wstring::npos) ? args.substr(args_start) : L""; + + // Define the path to the "scripts" directory + std::wstring scriptsDir = exeDir + L"\\scripts"; + + // Check if the "scripts" directory exists + DWORD attributes = GetFileAttributesW(scriptsDir.c_str()); + if (attributes == INVALID_FILE_ATTRIBUTES || !(attributes & FILE_ATTRIBUTE_DIRECTORY)) { + MessageBoxW(NULL, L"The 'scripts' directory does not exist. Please ensure it is in the same folder as the launcher.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Set the working directory to the "scripts" folder + if (!SetCurrentDirectoryW(scriptsDir.c_str())) { + MessageBoxW(NULL, L"Failed to set the working directory to 'scripts'.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Define the command to run and append arguments if present + std::wstring target; + if (!args.empty()) { + target = L"cmd.exe /c \"\"" LAUNCH_TARGET L"\" " + args + L"\""; + } else { + target = L"cmd.exe /c \"" LAUNCH_TARGET L"\""; + } + + // Configure the process startup info + STARTUPINFO si = { sizeof(si) }; + si.dwFlags = STARTF_USESHOWWINDOW; // Prevent the window from appearing + si.wShowWindow = SW_HIDE; // Hide the command window + + PROCESS_INFORMATION pi = {}; + + // Start the process without CREATE_NO_WINDOW flag to show the command window + if (!CreateProcessW( + NULL, // Application name (NULL because we pass the command in the command line) + &target[0], // Command line + NULL, // Process security attributes + NULL, // Thread security attributes + FALSE, // Inherit handles + 0, // No special flags + NULL, // Environment block (NULL to inherit parent) + NULL, // Current directory (NULL to use the parent process's current directory) + &si, // Startup info + &pi // Process information + )) { + MessageBoxW(NULL, L"Failed to launch the script.", L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Wait for the script to finish + WaitForSingleObject(pi.hProcess, INFINITE); + + // Cleanup + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + + return 0; +} diff --git a/winpython/portable/launchers_building/launchers_src/launcher_template_WINDOWS.cpp b/winpython/portable/launchers_building/launchers_src/launcher_template_WINDOWS.cpp new file mode 100644 index 00000000..6b10a89a --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src/launcher_template_WINDOWS.cpp @@ -0,0 +1,100 @@ +/* +DataLab-WinPython launcher script +--------------------------------- + +Licensed under the terms of the BSD 3-Clause +(see ./LICENSE for details) + +*/ + +#include +#include + +int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /*lpCmdLine*/, int /*nShowCmd*/) { + // Get the path to the current executable + wchar_t exePath[MAX_PATH]; + GetModuleFileNameW(NULL, exePath, MAX_PATH); + + // Determine the directory of the executable + std::wstring exeDir = exePath; + exeDir = exeDir.substr(0, exeDir.find_last_of(L"\\/")); + + // Get command line string and extract arguments + LPWSTR commandLine = GetCommandLineW(); + std::wstring args; + // If executable path is double quoted, skip the entire quoted section + if (commandLine[0] == L'"') { + LPWSTR closingQuote = wcschr(commandLine + 1, L'"'); + if (closingQuote) { + args = closingQuote + 1; + } + // For non-quoted path, skip to character after first space if it exists + } else { + LPWSTR spacePos = wcschr(commandLine, L' '); + if (spacePos) { + args = spacePos + 1; + } + } + // Strip leading whitespace + size_t args_start = args.find_first_not_of(L" "); + args = (args_start != std::wstring::npos) ? args.substr(args_start) : L""; + + // Define the path to the "scripts" directory + std::wstring scriptsDir = exeDir + L"\\scripts"; + + // Check if the "scripts" directory exists + DWORD attributes = GetFileAttributesW(scriptsDir.c_str()); + if (attributes == INVALID_FILE_ATTRIBUTES || !(attributes & FILE_ATTRIBUTE_DIRECTORY)) { + MessageBoxW(NULL, L"The 'scripts' directory does not exist. Please ensure it is in the same folder as the launcher.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Set the working directory to the "scripts" folder + if (!SetCurrentDirectoryW(scriptsDir.c_str())) { + MessageBoxW(NULL, L"Failed to set the working directory to 'scripts'.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Define the command to run and append arguments if present + std::wstring target; + if (!args.empty()) { + target = L"cmd.exe /c \"\"" LAUNCH_TARGET L"\" " + args + L"\""; + } else { + target = L"cmd.exe /c \"" LAUNCH_TARGET L"\""; + } + + // Configure the process startup info + STARTUPINFO si = { sizeof(si) }; + si.dwFlags = STARTF_USESHOWWINDOW; // Prevent the window from appearing + si.wShowWindow = SW_HIDE; // Hide the command window + + PROCESS_INFORMATION pi = {}; + + // Start the process with CREATE_NO_WINDOW flag + if (!CreateProcessW( + NULL, // Application name (NULL because we pass the command in the command line) + &target[0], // Command line + NULL, // Process security attributes + NULL, // Thread security attributes + FALSE, // Inherit handles + CREATE_NO_WINDOW, // Flags to prevent creating a window + NULL, // Environment block (NULL to inherit parent) + NULL, // Current directory (NULL to use the parent process's current directory) + &si, // Startup info + &pi // Process information + )) { + MessageBoxW(NULL, L"Failed to launch the script.", L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Wait for the script to finish + WaitForSingleObject(pi.hProcess, INFINITE); + + // Cleanup + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + + return 0; +} diff --git a/winpython/portable/launchers_building/launchers_src_original/LICENSE b/winpython/portable/launchers_building/launchers_src_original/LICENSE new file mode 100644 index 00000000..b3fb976c --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src_original/LICENSE @@ -0,0 +1,63 @@ +DataLab-WinPython license terms +=============================== + +DataLab-WinPython is a Python distribution for Windows: +- Based on WinPython, a portable distribution of Python for Windows (see section I. below). +- Including DataLab, an open-source platform for signal and image processing (see section II. below). + +I. - WinPython License Agreement (MIT License) +---------------------------------------------- + +Copyright (c) 2012 Pierre Raybaut, 2016+ WinPython team + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +II. - DataLab License Agreement (BSD 3-Clause License) +------------------------------------------------------ + +Copyright (c) 2023, DataLab Platform Developers. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/winpython/portable/launchers_building/launchers_src_original/build_one_launcher.bat b/winpython/portable/launchers_building/launchers_src_original/build_one_launcher.bat new file mode 100644 index 00000000..c48374c4 --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src_original/build_one_launcher.bat @@ -0,0 +1,108 @@ +@echo on +set icon_name=%1 +set LAUNCH_TARGET=%2 +set launcher_name=%3 +set subsystem=%4 +set destination=%5 + +set icon_name=%icon_name:"=% +set LAUNCH_TARGET=%LAUNCH_TARGET:"=% +set launcher_name=%launcher_name:"=% +set subsystem=%subsystem:"=% + +set ROOT_PATH=%~dp0..\ +set SCRIPT_PATH=%~dp0 +set TEMPO_PATH=%ROOT_PATH%launchers_temp +set OUTPUT_DIR=%ROOT_PATH%launchers_%destination% + +set "ICON_FILE=%ROOT_PATH%icons\%icon_name%" +set LAUNCHER_EXE=%OUTPUT_DIR%\%launcher_name%.exe + + +:: Paths to template WINDOWS or CONSOLE +set SOURCE_FILE=%SCRIPT_PATH%launcher_template_%subsystem%.cpp +echo SOURCE_FILE=%SOURCE_FILE% + +set "RESOURCE_FILE=%TEMPO_PATH%\%icon_name%.rc" +set "RESOURCE_OBJ=%TEMPO_PATH%\%icon_name%.res" + + +:: create pDirectory if needed +if not exist "%OUTPUT_DIR%" mkdir "%OUTPUT_DIR%" +if not exist "%TEMPO_PATH%" mkdir "%TEMPO_PATH%" + +cd/d %TEMPO_PATH% + +:: Check if MSVC environment is already initialized +if not defined VSINSTALLDIR ( + echo Initializing MSVC environment... + call %VCVARS_PATH% + if errorlevel 1 ( + echo [ERROR] Failed to initialize MSVC environment. + exit /b 1 + ) +) + +@echo on + +:: Walk through .bat files in the current directory + echo Processing %icon_name%.. + :: Stonebig: Remove previous .exe file + echo launcher_exe_action del /q "%LAUNCHER_EXE%" + if exist "%LAUNCHER_EXE%" ( + move "%LAUNCHER_EXE%" "%LAUNCHER_EXE%.old.exe" + del /q "%LAUNCHER_EXE%.old.exe" + ) + :: Stonebig: Remove intermediate .res and.rc file + if exist "%RESOURCE_OBJ%" ( + move "%RESOURCE_OBJ%" "%RESOURCE_OBJ%.old.exe" + del /q "%RESOURCE_OBJ%.old.exe" + ) + if exist "%RESOURCE_FILE%" ( + move "%RESOURCE_FILE%" "%RESOURCE_FILE%.old.exe" + del /q "%RESOURCE_FILE%.old.exe" + ) + :: Remove intermediate .obj file + del /q "launcher_template_%subsystem%.obj" + + :: Check if the icon exists + if exist "%ICON_FILE%" ( + echo Icon found: "%ICON_FILE%" + ) else ( + echo No icon found for "%ICON_FILE%" stoping + pause + exit + ) + + + :: Create resource file + echo Creating resource file... + > "%RESOURCE_FILE%" echo IDI_ICON1 ICON "%ICON_FILE%" + :: Compile resource + echo Compiling resource... + rc /fo "%RESOURCE_OBJ%" "%RESOURCE_FILE%" + + :: Compile the launcher executable + echo Compiling launcher executable... + cl /EHsc /O2 /DUNICODE /W4 "%SOURCE_FILE%" "%RESOURCE_OBJ%" ^ + /Fe"%LAUNCHER_EXE%%" ^ + /DLAUNCH_TARGET=\"%LAUNCH_TARGET%\" ^ + User32.lib ^ + /link /SUBSYSTEM:%subsystem% + + + if errorlevel 1 ( + echo [ERROR] Failed to build launcher for %LAUNCH_TARGET% + exit /b 1 + ) + + if exist "%LAUNCHER_EXE%" ( + echo [SUCCESS] Launcher created: "%LAUNCHER_EXE%"" + ) else ( + echo [ERROR] Failed to build launcher "%LAUNCHER_EXE%" from "%icon_name%" to call "%LAUNCH_TARGET%" + exit /b 1 + ) + +echo All launchers processed. +rem exit /b 0 + diff --git a/winpython/portable/launchers_building/launchers_src_original/launcher_template_CONSOLE.cpp b/winpython/portable/launchers_building/launchers_src_original/launcher_template_CONSOLE.cpp new file mode 100644 index 00000000..93614b9e --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src_original/launcher_template_CONSOLE.cpp @@ -0,0 +1,75 @@ +/* +DataLab-WinPython launcher script +--------------------------------- + +Licensed under the terms of the BSD 3-Clause +(see ./LICENSE for details) + +*/ + +#include +#include + +int main() { + // Get the path to the current executable + wchar_t exePath[MAX_PATH]; + GetModuleFileNameW(NULL, exePath, MAX_PATH); + + // Determine the directory of the executable + std::wstring exeDir = exePath; + exeDir = exeDir.substr(0, exeDir.find_last_of(L"\\/")); + + // Define the path to the "scripts" directory + std::wstring scriptsDir = exeDir + L"\\scripts"; + + // Check if the "scripts" directory exists + DWORD attributes = GetFileAttributesW(scriptsDir.c_str()); + if (attributes == INVALID_FILE_ATTRIBUTES || !(attributes & FILE_ATTRIBUTE_DIRECTORY)) { + MessageBoxW(NULL, L"The 'scripts' directory does not exist. Please ensure it is in the same folder as the launcher.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Set the working directory to the "scripts" folder + if (!SetCurrentDirectoryW(scriptsDir.c_str())) { + MessageBoxW(NULL, L"Failed to set the working directory to 'scripts'.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Define the command to run + std::wstring target = L"cmd.exe /c \"" LAUNCH_TARGET L"\""; + + // Configure the process startup info + STARTUPINFO si = { sizeof(si) }; + si.dwFlags = STARTF_USESHOWWINDOW; // Prevent the window from appearing + si.wShowWindow = SW_HIDE; // Hide the command window + + PROCESS_INFORMATION pi = {}; + + // Start the process without CREATE_NO_WINDOW flag to show the command window + if (!CreateProcessW( + NULL, // Application name (NULL because we pass the command in the command line) + &target[0], // Command line + NULL, // Process security attributes + NULL, // Thread security attributes + FALSE, // Inherit handles + 0, // No special flags + NULL, // Environment block (NULL to inherit parent) + NULL, // Current directory (NULL to use the parent process's current directory) + &si, // Startup info + &pi // Process information + )) { + MessageBoxW(NULL, L"Failed to launch the script.", L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Wait for the script to finish + WaitForSingleObject(pi.hProcess, INFINITE); + + // Cleanup + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + + return 0; +} diff --git a/winpython/portable/launchers_building/launchers_src_original/launcher_template_WINDOWS.cpp b/winpython/portable/launchers_building/launchers_src_original/launcher_template_WINDOWS.cpp new file mode 100644 index 00000000..9c878be6 --- /dev/null +++ b/winpython/portable/launchers_building/launchers_src_original/launcher_template_WINDOWS.cpp @@ -0,0 +1,75 @@ +/* +DataLab-WinPython launcher script +--------------------------------- + +Licensed under the terms of the BSD 3-Clause +(see ./LICENSE for details) + +*/ + +#include +#include + +int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /*lpCmdLine*/, int /*nShowCmd*/) { + // Get the path to the current executable + wchar_t exePath[MAX_PATH]; + GetModuleFileNameW(NULL, exePath, MAX_PATH); + + // Determine the directory of the executable + std::wstring exeDir = exePath; + exeDir = exeDir.substr(0, exeDir.find_last_of(L"\\/")); + + // Define the path to the "scripts" directory + std::wstring scriptsDir = exeDir + L"\\scripts"; + + // Check if the "scripts" directory exists + DWORD attributes = GetFileAttributesW(scriptsDir.c_str()); + if (attributes == INVALID_FILE_ATTRIBUTES || !(attributes & FILE_ATTRIBUTE_DIRECTORY)) { + MessageBoxW(NULL, L"The 'scripts' directory does not exist. Please ensure it is in the same folder as the launcher.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Set the working directory to the "scripts" folder + if (!SetCurrentDirectoryW(scriptsDir.c_str())) { + MessageBoxW(NULL, L"Failed to set the working directory to 'scripts'.", + L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Define the command to run + std::wstring target = L"cmd.exe /c \"" LAUNCH_TARGET L"\""; + + // Configure the process startup info + STARTUPINFO si = { sizeof(si) }; + si.dwFlags = STARTF_USESHOWWINDOW; // Prevent the window from appearing + si.wShowWindow = SW_HIDE; // Hide the command window + + PROCESS_INFORMATION pi = {}; + + // Start the process with CREATE_NO_WINDOW flag + if (!CreateProcessW( + NULL, // Application name (NULL because we pass the command in the command line) + &target[0], // Command line + NULL, // Process security attributes + NULL, // Thread security attributes + FALSE, // Inherit handles + CREATE_NO_WINDOW, // Flags to prevent creating a window + NULL, // Environment block (NULL to inherit parent) + NULL, // Current directory (NULL to use the parent process's current directory) + &si, // Startup info + &pi // Process information + )) { + MessageBoxW(NULL, L"Failed to launch the script.", L"Launcher Error", MB_ICONERROR); + return 1; + } + + // Wait for the script to finish + WaitForSingleObject(pi.hProcess, INFINITE); + + // Cleanup + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + + return 0; +} diff --git a/winpython/portable/launchers_final/IDLE (Python GUI).exe b/winpython/portable/launchers_final/IDLE (Python GUI).exe new file mode 100644 index 00000000..65523199 Binary files /dev/null and b/winpython/portable/launchers_final/IDLE (Python GUI).exe differ diff --git a/winpython/portable/launchers_final/Jupyter Lab.exe b/winpython/portable/launchers_final/Jupyter Lab.exe new file mode 100644 index 00000000..93003fcb Binary files /dev/null and b/winpython/portable/launchers_final/Jupyter Lab.exe differ diff --git a/winpython/portable/launchers_final/Jupyter Notebook.exe b/winpython/portable/launchers_final/Jupyter Notebook.exe new file mode 100644 index 00000000..28fdbea3 Binary files /dev/null and b/winpython/portable/launchers_final/Jupyter Notebook.exe differ diff --git a/winpython/portable/launchers_final/Spyder reset.exe b/winpython/portable/launchers_final/Spyder reset.exe new file mode 100644 index 00000000..21250f98 Binary files /dev/null and b/winpython/portable/launchers_final/Spyder reset.exe differ diff --git a/winpython/portable/launchers_final/Spyder.exe b/winpython/portable/launchers_final/Spyder.exe new file mode 100644 index 00000000..93b1a050 Binary files /dev/null and b/winpython/portable/launchers_final/Spyder.exe differ diff --git a/winpython/portable/launchers_final/VS Code.exe b/winpython/portable/launchers_final/VS Code.exe new file mode 100644 index 00000000..225decb4 Binary files /dev/null and b/winpython/portable/launchers_final/VS Code.exe differ diff --git a/winpython/portable/launchers_final/WinPython Command Prompt.exe b/winpython/portable/launchers_final/WinPython Command Prompt.exe new file mode 100644 index 00000000..e4e824c5 Binary files /dev/null and b/winpython/portable/launchers_final/WinPython Command Prompt.exe differ diff --git a/winpython/portable/launchers_final/WinPython Control Panel.exe b/winpython/portable/launchers_final/WinPython Control Panel.exe new file mode 100644 index 00000000..72a57a67 Binary files /dev/null and b/winpython/portable/launchers_final/WinPython Control Panel.exe differ diff --git a/winpython/portable/launchers_final/WinPython Interpreter.exe b/winpython/portable/launchers_final/WinPython Interpreter.exe new file mode 100644 index 00000000..dfa43135 Binary files /dev/null and b/winpython/portable/launchers_final/WinPython Interpreter.exe differ diff --git a/winpython/portable/launchers_final/WinPython Powershell Prompt.exe b/winpython/portable/launchers_final/WinPython Powershell Prompt.exe new file mode 100644 index 00000000..d4512f32 Binary files /dev/null and b/winpython/portable/launchers_final/WinPython Powershell Prompt.exe differ diff --git a/winpython/portable/launchers_final/license.txt b/winpython/portable/launchers_final/license.txt new file mode 100644 index 00000000..da461f3b --- /dev/null +++ b/winpython/portable/launchers_final/license.txt @@ -0,0 +1,37 @@ +Note +---- + +WinPython components are distributed as they were received from +their copyright holder, under their own copyright and/or license, +and without any linking with each other. + +WinPython software collection (i.e. the collection of software, +libraries and documents) is licensed under the terms of the +following license agreement. + + +WinPython License Agreement (MIT License) +----------------------------------------- + +Copyright (c) 2012 Pierre Raybaut, 2016+ WinPython team + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/winpython/portable/launchers_final/notebooks/docs/README.txt b/winpython/portable/launchers_final/notebooks/docs/README.txt new file mode 100644 index 00000000..a0aab429 --- /dev/null +++ b/winpython/portable/launchers_final/notebooks/docs/README.txt @@ -0,0 +1 @@ +Examples are now to be found at github.com/winpython/winpython_afterdoc \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/WinPythonIni.py b/winpython/portable/launchers_final/scripts/WinPythonIni.py new file mode 100644 index 00000000..cbcb640a --- /dev/null +++ b/winpython/portable/launchers_final/scripts/WinPythonIni.py @@ -0,0 +1,167 @@ +import os +import sys +from pathlib import Path + +winpython_inidefault = r''' +[debug] +state = disabled +[env.bat] +#see https://github.com/winpython/winpython/issues/839 +#USERPROFILE = %HOME% +SPYDER_CONFDIR = %HOME%\settings\.spyder-py3 +JUPYTER_DATA_DIR = %HOME% +JUPYTER_CONFIG_DIR = %WINPYDIR%\etc\jupyter +JUPYTER_CONFIG_PATH = %WINPYDIR%\etc\jupyter +[inactive_environment_per_user] +## changing this segment to [active_environment_per_user] makes this segment of lines active +HOME = %HOMEDRIVE%%HOMEPATH%\Documents\WinPython%WINPYVER%\settings +USERPROFILE = %HOME% +JUPYTER_DATA_DIR = %HOME% +WINPYWORKDIR = %HOMEDRIVE%%HOMEPATH%\Documents\WinPython%WINPYVER%\Notebooks +[inactive_environment_common] +## changing this segment to [inactive_environment_common] makes this segment of lines active +USERPROFILE = %HOME% +[environment] +## Uncomment lines to override environment variables +#SPYDER_CONFDIR = %HOME%\settings\.spyder-py3 +#JULIA_HOME=%WINPYDIRBASE%\t\Julia\bin\ +#JULIA_EXE=julia.exe +#JULIA=%JULIA_HOME%%JULIA_EXE% +#JULIA_PKGDIR=%WINPYDIRBASE%\settings\.julia +#QT_PLUGIN_PATH=%WINPYDIR%\Lib\site-packages\pyqt5_tools\Qt\plugins +''' + +class WinPythonEnv: + editable_sections = { + "env.ini", "environment", "debug", + "active_environment_per_user", "active_environment_common" + } + + def __init__(self, args=None): + self.args = args[:] if args is not None else sys.argv[1:] + self.env = dict(os.environ) + self._initialize_paths() + self.output_lines = [] + # in case 1st parameter is a different WinPython.ini + if self.args and self.args[0].endswith("winpython.ini"): + self.winpython_ini = Path(self.args[0]) + self.args = self.args[1:] + else: + self.winpython_ini = self.winpy_base / "settings" / "winpython.ini" + def _initialize_paths(self): + """we do what env.bat was doing""" + self.winpy_base = Path(Path(__file__).parent.parent).resolve() + self.home_dir = Path(self.winpy_base / 'settings') + self.winpy_dir = Path(sys.executable).parent + self.python_exe = Path(sys.executable) + + def get_file(self, file_path: Path, default_content=None) -> str: + if not file_path.exists() and default_content: + file_path.parent.mkdir(parents=True, exist_ok=True) + file_path.write_text(default_content) + return file_path.read_text(encoding='utf-8') + + def translate_vars(self, value: str) -> str: + """Replace %VAR% patterns with environment values.""" + parts = value.split('%') + for i in range(1, len(parts), 2): + parts[i] = self.env.get(parts[i], parts[i]) + return ''.join(parts) + + def parse_ini_lines(self, lines): + """Parse ini lines and update environment variables.""" + section = "env.ini" + for line in map(str.strip, lines): + if not line or line.startswith("#"): + continue + if line.startswith("["): + section = line.strip("[]") + continue + if "=" in line: + key, val = map(str.strip, line.split("=", 1)) + val = self.translate_vars(val) + if section == "debug" and key == "state": + key = "WINPYDEBUG" + if section in self.editable_sections: + self.env[key] = val + self.output_lines.append(f"{key}={val}") + + def setup_qt_conf(self): + """Create qt.conf files if missing for Qt-based packages.""" + qt_conf_text = "[Paths]\nPrefix = .\nBinaries = .\n" + for subpkg in ("PyQt5", "PyQt6", "Pyside6"): + pkg_path = self.winpy_dir / "Lib" / "site-packages" / subpkg + if pkg_path.exists() and not (pkg_path / "qt.conf").exists(): + (pkg_path / "qt.conf").write_text(qt_conf_text) + + + def setup_paths(self): + lines = [ + f"WINPYDIRBASE={self.winpy_base}", + f"WINPYDIR={self.winpy_dir}", + f"PYTHON={self.python_exe}", + f"HOME={self.home_dir}", + f"WINPYWORKDIR={self.winpy_base / "Notebooks"}", + ] + if (self.winpy_dir / "Lib" / "site-packages" / "PyQt5" / "__init__.py").is_file(): + lines.append("QT_API=pyqt5") + pandoc = self.winpy_base / "t" / "pandoc.exe" + if pandoc.is_file(): + lines.append(f"PYPANDOC_PANDOC={pandoc}") + path_extra = f"{self.winpy_dir};{self.winpy_dir / 'Scripts'};{self.winpy_dir/ ".." / 't'};{self.winpy_dir / ".." / 'n'};" + if path_extra not in self.env.get('PATH', ''): + lines.append(f"PATH={path_extra}{self.env.get('PATH', '')}") + return lines + + + def ensure_dirs(self): + for key in ('HOME', 'WINPYWORKDIR', 'WINPYWORKDIR1'): + Path(self.env.get(key, self.home_dir)).mkdir(parents=True, exist_ok=True) + spyder_workdir = Path(self.env['HOME']) / f".spyder-py{sys.version_info[0]}" / "workingdir" + if not spyder_workdir.exists(): + spyder_workdir.parent.mkdir(parents=True, exist_ok=True) + spyder_workdir.write_text(str(self.home_dir / "Notebooks")) + + def determine_winpyworkdir1(self): + """Replicates original WINPYWORKDIR1 argument/path rules.""" + winpyworkdir1 = Path(self.env['WINPYWORKDIR']) + if len(self.args) >= 1: + arg_path = Path(self.args[0]) + if arg_path.is_file(): + winpyworkdir1 = arg_path.parent + elif arg_path.is_dir(): + winpyworkdir1 = arg_path + # If cwd differs from script dir (and not under 'scripts'), use cwd + cd_dir = Path(os.getcwd()) + script_dir = Path(__file__).parent + if cd_dir != script_dir and cd_dir / "scripts" != script_dir: + winpyworkdir1 = cd_dir + self.env['WINPYWORKDIR1'] = str(winpyworkdir1) + self.output_lines.append(f"WINPYWORKDIR1={winpyworkdir1}") + + def run(self): + # env.ini + env_ini_file = Path(__file__).parent / "env.ini" + if env_ini_file.is_file(): + ini_content = self.get_file(env_ini_file) + self.parse_ini_lines(ini_content.splitlines()) + # Set up variables and paths + self.parse_ini_lines(self.setup_paths()) + # WINPYWORKDIR1 logic here + self.determine_winpyworkdir1() + # Load and parse ini files + ini_content = self.get_file(self.winpython_ini, winpython_inidefault) + + self.parse_ini_lines(ini_content.splitlines()) + # Ensure directories exist + self.ensure_dirs() + # Setup Qt conf files + self.setup_qt_conf() + + for l in self.output_lines: + print(rf"set {l}" , end="&&") + # later_version ? + # p = subprocess.Popen(["start", "cmd", "/k", "set"], shell = True) + +if __name__ == "__main__": + WinPythonEnv().run() diff --git a/winpython/portable/launchers_final/scripts/WinPython_PS_Prompt.ps1 b/winpython/portable/launchers_final/scripts/WinPython_PS_Prompt.ps1 new file mode 100644 index 00000000..d35aaa48 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/WinPython_PS_Prompt.ps1 @@ -0,0 +1,62 @@ +### WinPython_PS_Prompt.ps1 ### +$0 = $myInvocation.MyCommand.Definition +$dp0 = [System.IO.Path]::GetDirectoryName($0) + +# default if env.cfg fails +$env:WINPYthon_subdirectory_name = "python" +$env:WINPYthon_exe = "python.exe" +# Define the path to the config file +Get-Content (${PSScriptRoot} +"\env.ini") | ForEach-Object { + $parts = $_ -split '=', 2 + if ($parts.Count -eq 2) { + Set-Variable -Name ($parts[0]).Trim() -Value $parts[1].Trim() -Scope Global + } +} + +# $env:PYTHONUTF8 = 1 would create issues in "movable" patching +$env:WINPYDIRBASE = "$dp0\.." +# get a normalize path +# http://stackoverflow.com/questions/1645843/resolve-absolute-path-from-relative-path-and-or-file-name +$env:WINPYDIRBASE = [System.IO.Path]::GetFullPath( $env:WINPYDIRBASE ) + +# avoid double_init (will only resize screen) +if (-not ($env:WINPYDIR -eq [System.IO.Path]::GetFullPath( $env:WINPYDIRBASE+"\{self.python_dir_name}")) ) { +$env:WINPYDIR = $env:WINPYDIRBASE+ "\" +$env:WINPYthon_subdirectory_name +# 2019-08-25 pyjulia needs absolutely a variable PYTHON=%WINPYDIR%python.exe +$env:PYTHON = $env:WINPYthon_exe + +$env:WINPYVER = $env:WINPYVER +# rem 2023-02-12 try utf-8 on console +# rem see https://github.com/pypa/pip/issues/11798#issuecomment-1427069681 +$env:PYTHONIOENCODING = "utf-8" + +$env:HOME = "$env:WINPYDIRBASE\settings" + +$env:WINPYDIRBASE = "" +$env:JUPYTER_DATA_DIR = "$env:HOME" + +if (-not $env:PATH.ToLower().Contains(";"+ $env:WINPYDIR.ToLower()+ ";")) { + $env:PATH = "$env:WINPYDIR\\Lib\site-packages\PyQt5;$env:WINPYDIR\\;$env:WINPYDIR\\DLLs;$env:WINPYDIR\\Scripts;$env:WINPYDIR\\..\t;$env:WINPYDIR\\..\n;$env:path" } + + +#rem force default pyqt5 kit for Spyder if PyQt5 module is there +if (Test-Path "$env:WINPYDIR\Lib\site-packages\PyQt5\__init__.py") { $env:QT_API = "pyqt5" } + +# PyQt5 qt.conf creation and winpython.ini creation done via Winpythonini.py (called per env_for_icons.bat for now) +# Start-Process -FilePath $env:PYTHON -ArgumentList ($env:WINPYDIRBASE + '\scripts\WinPythonIni.py') + + +### Set-WindowSize + +Function Set-WindowSize { +Param([int]$x=$host.ui.rawui.windowsize.width, + [int]$y=$host.ui.rawui.windowsize.heigth, + [int]$buffer=$host.UI.RawUI.BufferSize.heigth) + $buffersize = new-object System.Management.Automation.Host.Size($x,$buffer) + $host.UI.RawUI.BufferSize = $buffersize + $size = New-Object System.Management.Automation.Host.Size($x,$y) + $host.ui.rawui.WindowSize = $size +} +# Windows10 yelling at us with 150 40 6000 +# Set-WindowSize 195 40 6000 +} diff --git a/winpython/portable/launchers_final/scripts/activate.bat b/winpython/portable/launchers_final/scripts/activate.bat new file mode 100644 index 00000000..e52886af --- /dev/null +++ b/winpython/portable/launchers_final/scripts/activate.bat @@ -0,0 +1,2 @@ +@echo off +call "%~dp0env.bat" %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/cmd.bat b/winpython/portable/launchers_final/scripts/cmd.bat new file mode 100644 index 00000000..fc76541f --- /dev/null +++ b/winpython/portable/launchers_final/scripts/cmd.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +cmd.exe /k \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/cmd_ps.bat b/winpython/portable/launchers_final/scripts/cmd_ps.bat new file mode 100644 index 00000000..c6fa79a4 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/cmd_ps.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" +Powershell.exe -Command "& {Start-Process PowerShell.exe -ArgumentList '-ExecutionPolicy RemoteSigned -noexit -File ""%~dp0WinPython_PS_Prompt.ps1""'}" diff --git a/winpython/portable/launchers_final/scripts/env.bat b/winpython/portable/launchers_final/scripts/env.bat new file mode 100644 index 00000000..324d971b --- /dev/null +++ b/winpython/portable/launchers_final/scripts/env.bat @@ -0,0 +1,26 @@ +@echo off +rem read init variables +FOR /F "usebackq tokens=1,2 delims==" %%G IN ("%~dp0env.ini") DO (set %%G=%%H) + +set WINPYDIRBASE=%~dp0.. + +rem get a normalized path +set WINPYDIRBASETMP=%~dp0.. +pushd %WINPYDIRBASETMP% +set WINPYDIRBASE=%__CD__% +if "%WINPYDIRBASE:~-1%"=="\" set WINPYDIRBASE=%WINPYDIRBASE:~0,-1% +set WINPYDIRBASETMP= +popd + +set WINPYDIR=%WINPYDIRBASE%\python +set PYTHON=%WINPYDIR%\python.exe + +set PYTHONIOENCODING=utf-8 +set HOME=%WINPYDIRBASE%\settings + +rem Remove all double quotes +set PATH_CLEANED=%PATH:"=% +echo ";%PATH_CLEANED%;" | %WINDIR%\system32\find.exe /C /I ";%WINPYDIR%\;" >nul +if %ERRORLEVEL% NEQ 0 set "PATH=%WINPYDIR%\;%WINPYDIR%\Scripts;%WINPYDIR%\..\t;%WINPYDIR%\..\n;%PATH%" + +set PATH_CLEANED= diff --git a/winpython/portable/launchers_final/scripts/env_for_icons.bat b/winpython/portable/launchers_final/scripts/env_for_icons.bat new file mode 100644 index 00000000..19df384c --- /dev/null +++ b/winpython/portable/launchers_final/scripts/env_for_icons.bat @@ -0,0 +1,7 @@ +@echo off +FOR /F "delims=" %%i IN ('""%~dp0..\python\python.exe" "%~dp0WinpythonIni.py" %* "') DO set winpythontoexec=%%i +%winpythontoexec%set winpythontoexec= + +rem Change of directory only if we are in a launcher directory +if "%__CD__%scripts\"=="%~dp0" cd/D %WINPYWORKDIR1% +if "%__CD__%"=="%~dp0" cd/D %WINPYWORKDIR1% diff --git a/winpython/portable/launchers_final/scripts/python.bat b/winpython/portable/launchers_final/scripts/python.bat new file mode 100644 index 00000000..1e8fea0b --- /dev/null +++ b/winpython/portable/launchers_final/scripts/python.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +"%WINPYDIR%\python.exe" %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/readme.txt b/winpython/portable/launchers_final/scripts/readme.txt new file mode 100644 index 00000000..11592357 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/readme.txt @@ -0,0 +1,3 @@ +These batch files are required to run WinPython icons. +These files should help the user writing his/her own +The environment variables are set-up in 'env.bat' and 'env_for_icons.bat'. \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/spyder_reset.bat b/winpython/portable/launchers_final/scripts/spyder_reset.bat new file mode 100644 index 00000000..89cb78c8 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/spyder_reset.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" +"%WINPYDIR%\scripts\spyder.exe" --reset %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/upgrade_pip.bat b/winpython/portable/launchers_final/scripts/upgrade_pip.bat new file mode 100644 index 00000000..4443ed16 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/upgrade_pip.bat @@ -0,0 +1,7 @@ +@echo off +call "%~dp0env.bat" +echo this will upgrade pip with latest version, then patch it for WinPython portability ok ? +pause +"%WINPYDIR%\python.exe" -m pip install --upgrade pip +"%WINPYDIR%\python.exe" -c "from wppm import wppm;dist=wppm.Distribution(r'%WINPYDIR%');dist.patch_standard_packages('pip', to_movable=True) +pause \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/winidle.bat b/winpython/portable/launchers_final/scripts/winidle.bat new file mode 100644 index 00000000..b3f734d9 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winidle.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +"%WINPYDIR%\python.exe" -m idlelib %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/winipython_notebook.bat b/winpython/portable/launchers_final/scripts/winipython_notebook.bat new file mode 100644 index 00000000..8123c5ee --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winipython_notebook.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +"%WINPYDIR%\python.exe" -m jupyter notebook %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/winjupyter_lab.bat b/winpython/portable/launchers_final/scripts/winjupyter_lab.bat new file mode 100644 index 00000000..b0ed37f9 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winjupyter_lab.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +"%WINPYDIR%\python.exe" -m jupyter lab %* \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/winpython.bat b/winpython/portable/launchers_final/scripts/winpython.bat new file mode 100644 index 00000000..2a0706ec --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winpython.bat @@ -0,0 +1,8 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +rem backward compatibility for non-ptpython users +if exist "%WINPYDIR%\Lib\site-packages\ptpython" ( + "%WINPYDIR%\python.exe" -m ptpython %* +) else ( + "%WINPYDIR%\python.exe" %* +) \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/winspyder.bat b/winpython/portable/launchers_final/scripts/winspyder.bat new file mode 100644 index 00000000..1a843ca0 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winspyder.bat @@ -0,0 +1,5 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +rem "%WINPYDIR%\scripts\spyder.exe" %* -w "%WINPYWORKDIR1%" +"%WINPYDIR%\scripts\spyder.exe" %* + diff --git a/winpython/portable/launchers_final/scripts/winvscode.bat b/winpython/portable/launchers_final/scripts/winvscode.bat new file mode 100644 index 00000000..d9697b89 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/winvscode.bat @@ -0,0 +1,10 @@ +@echo off +call "%~dp0env_for_icons.bat" +if exist "%WINPYDIR%\..\t\vscode\code.exe" ( + "%WINPYDIR%\..\t\vscode\code.exe" %* +) else ( +if exist "%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" ( + "%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" %* +) else ( + code %* +)) \ No newline at end of file diff --git a/winpython/portable/launchers_final/scripts/wpcp.bat b/winpython/portable/launchers_final/scripts/wpcp.bat new file mode 100644 index 00000000..6dd22056 --- /dev/null +++ b/winpython/portable/launchers_final/scripts/wpcp.bat @@ -0,0 +1,3 @@ +@echo off +call "%~dp0env_for_icons.bat" %* +cmd.exe /k "echo wppm & "%WINPYDIR%\python.exe" -m wppm" %* \ No newline at end of file diff --git a/winpython/qthelpers.py b/winpython/qthelpers.py deleted file mode 100644 index 48ed46cf..00000000 --- a/winpython/qthelpers.py +++ /dev/null @@ -1,273 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2009-2011 Pierre Raybaut -# Licensed under the terms of the MIT License -# (copied from Spyder source code [spyderlib.qt]) -# -# Qt5 migration would not have been possible without -# 2014-2015 Spyder Development Team work -# (MIT License too, same parent project) - -"""Qt utilities""" - -# winpython.qt becomes winpython._vendor.qtpy -from winpython._vendor.qtpy.QtWidgets import ( - QAction, - QStyle, - QWidget, - QApplication, - QLabel, - QVBoxLayout, - QHBoxLayout, - QLineEdit, - QMenu, - QToolButton, -) - -from winpython._vendor.qtpy.QtGui import ( - QIcon, - QKeyEvent, - QKeySequence, - QPixmap, -) - -from winpython._vendor.qtpy.QtCore import ( - Signal, - QObject, - Qt, - QLocale, - QTranslator, - QLibraryInfo, - QEvent, - Slot, -) -from winpython._vendor.qtpy.compat import ( - to_qvariant, - from_qvariant, -) - -import os -import re -from pathlib import Path -import sys - -# Local import -from winpython import config - - -def get_icon(name): - """Return QIcon from icon name""" - return QIcon(str(Path(config.IMAGE_PATH) / name)) - - -class MacApplication(QApplication): - """Subclass to be able to open external files with our Mac app""" - - open_external_file = Signal(str) - - def __init__(self, *args): - QApplication.__init__(self, *args) - - def event(self, event): - if event.type() == QEvent.FileOpen: - fname = str(event.file()) - # PyQt4 old SIGNAL: self.emit(SIGNAL('open_external_file(QString)'), fname) - self.open_external_file.emit(fname) - return QApplication.event(self, event) - - -def qapplication(translate=True): - """Return QApplication instance - Creates it if it doesn't already exist""" - if sys.platform == "darwin" and "Spyder.app" in __file__: - SpyderApplication = MacApplication - else: - SpyderApplication = QApplication - app = SpyderApplication.instance() - if not app: - # Set Application name for Gnome 3 - # https://groups.google.com/forum/#!topic/pyside/24qxvwfrRDs - app = SpyderApplication(["Spyder"]) - if translate: - install_translator(app) - return app - - -def file_uri(fname): - """Select the right file uri scheme according to the operating system""" - if os.name == "nt": - # Local file - if re.search(r"^[a-zA-Z]:", fname): - return "file:///" + fname - # UNC based path - else: - return "file://" + fname - else: - return "file://" + fname - - -QT_TRANSLATOR = None - - -def install_translator(qapp): - """Install Qt translator to the QApplication instance""" - global QT_TRANSLATOR - if QT_TRANSLATOR is None: - qt_translator = QTranslator() - if qt_translator.load( - "qt_" + QLocale.system().name(), - QLibraryInfo.location(QLibraryInfo.TranslationsPath), - ): - QT_TRANSLATOR = qt_translator # Keep reference alive - if QT_TRANSLATOR is not None: - qapp.installTranslator(QT_TRANSLATOR) - - -def keybinding(attr): - """Return keybinding""" - ks = getattr(QKeySequence, attr) - return from_qvariant(QKeySequence.keyBindings(ks)[0], str) - - -def _process_mime_path(path, extlist): - if path.startswith(r"file://"): - if os.name == "nt": - # On Windows platforms, a local path reads: file:///c:/... - # and a UNC based path reads like: file://server/share - if path.startswith(r"file:///"): # this is a local path - path = path[8:] - else: # this is a unc path - path = path[5:] - else: - path = path[7:] - if Path(path).exists(): - if extlist is None or Path(path).suffix in extlist: - return path - - -def mimedata2url(source, extlist=None): - """ - Extract url list from MIME data - extlist: for example ('.py', '.pyw') - """ - pathlist = [] - if source.hasUrls(): - for url in source.urls(): - # path = _process_mime_path(to_text_string(url.toString()), extlist) - path = _process_mime_path(str(url.toString()), extlist) - if path is not None: - pathlist.append(path) - elif source.hasText(): - # for rawpath in to_text_string(source.text()).splitlines(): - for rawpath in str(source.text()).splitlines(): - path = _process_mime_path(rawpath, extlist) - if path is not None: - pathlist.append(path) - if pathlist: - return pathlist - - -def action2button( - action, - autoraise=True, - text_beside_icon=False, - parent=None, -): - """Create a QToolButton directly from a QAction object""" - if parent is None: - parent = action.parent() - button = QToolButton(parent) - button.setDefaultAction(action) - button.setAutoRaise(autoraise) - if text_beside_icon: - button.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) - return button - - -def toggle_actions(actions, enable): - """Enable/disable actions""" - if actions is not None: - for action in actions: - if action is not None: - action.setEnabled(enable) - - -def create_action( - parent, - text, - shortcut=None, - icon=None, - tip=None, - toggled=None, - triggered=None, - data=None, - menurole=None, - context=Qt.WindowShortcut, -): - """Create a QAction""" - action = QAction(text, parent) - if triggered is not None: - # PyQt4 old SIGNAL: parent.connect(action, SIGNAL("triggered()"), triggered) - action.triggered.connect(triggered) - if toggled is not None: - # PyQt4 old SIGNAL: parent.connect(action, SIGNAL("toggled(bool)"), toggled) - action.toggled.connect(toggled) - action.setCheckable(True) - if icon is not None: - # if is_text_string(icon): - if isinstance(icon, str): - icon = get_icon(icon) - action.setIcon(icon) - if shortcut is not None: - action.setShortcut(shortcut) - if tip is not None: - action.setToolTip(tip) - action.setStatusTip(tip) - if data is not None: - action.setData(to_qvariant(data)) - if menurole is not None: - action.setMenuRole(menurole) - # TODO: Hard-code all shortcuts and choose context=Qt.WidgetShortcut - # (this will avoid calling shortcuts from another dockwidget - # since the context thing doesn't work quite well with these widgets) - action.setShortcutContext(context) - return action - - -def add_actions(target, actions, insert_before=None): - """Add actions to a menu""" - previous_action = None - target_actions = list(target.actions()) - if target_actions: - previous_action = target_actions[-1] - if previous_action.isSeparator(): - previous_action = None - for action in actions: - if (action is None) and (previous_action is not None): - if insert_before is None: - target.addSeparator() - else: - target.insertSeparator(insert_before) - elif isinstance(action, QMenu): - if insert_before is None: - target.addMenu(action) - else: - target.insertMenu(insert_before, action) - elif isinstance(action, QAction): - if insert_before is None: - target.addAction(action) - else: - target.insertAction(insert_before, action) - previous_action = action - - -def get_std_icon(name, size=None): - """Get standard platform icon - Call 'show_std_icons()' for details""" - if not name.startswith("SP_"): - name = "SP_" + name - icon = QWidget().style().standardIcon(getattr(QStyle, name)) - if size is None: - return icon - else: - return QIcon(icon.pixmap(size, size)) diff --git a/winpython/register_python.py b/winpython/register_python.py deleted file mode 100644 index fc24c96b..00000000 --- a/winpython/register_python.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python -import sys -from winpython import associate, utils -from argparse import ArgumentParser - -parser = ArgumentParser(description="Register Python file extensions, icons "\ - "and Windows explorer context menu to a target "\ - "Python distribution.") -try: - str_type = unicode -except NameError: - str_type = str -parser.add_argument('--target', metavar='path', type=str, - default=sys.prefix, - help='path to the target Python distribution') -parser.add_argument('--all', dest='all', action='store_const', - const=True, default=False, - help='register to all users, requiring administrative '\ - 'privileges (default: register to current user only)') -args = parser.parse_args() - -print(args.target) -if utils.is_python_distribution(args.target): - associate.register(args.target, current=not args.all) -else: - raise WindowsError(f"Invalid Python distribution {args.target}") diff --git a/winpython/unregister_python.py b/winpython/unregister_python.py deleted file mode 100644 index f0bcefda..00000000 --- a/winpython/unregister_python.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python -import sys -from winpython import associate, utils -from argparse import ArgumentParser - -parser = ArgumentParser(description="unRegister Python file extensions, icons "\ - "and Windows explorer context menu to a target "\ - "Python distribution.") -try: - str_type = unicode -except NameError: - str_type = str -parser.add_argument('--target', metavar='path', type=str, - default=sys.prefix, - help='path to the target Python distribution') -parser.add_argument('--all', dest='all', action='store_const', - const=True, default=False, - help='unregister to all users, requiring administrative '\ - 'privileges (default: register to current user only)') -args = parser.parse_args() - -print(args.target) -if utils.is_python_distribution(args.target): - associate.unregister(args.target, current=not args.all) -else: - raise WindowsError(f"Invalid Python distribution {args.target}") diff --git a/winpython/utils.py b/winpython/utils.py deleted file mode 100644 index c2a992d7..00000000 --- a/winpython/utils.py +++ /dev/null @@ -1,1018 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython utilities - -Created on Tue Aug 14 14:08:40 2012 -""" - -import os -from pathlib import Path -import subprocess -import re -import tarfile -import zipfile -import tempfile -import shutil -import atexit -import sys -import stat -import locale -import io - -# Local imports -import winreg - -def get_python_executable(path = None): - """return the python executable""" - my_path = sys.executable if path == None else path # default = current one - my_path = my_path if Path(my_path).is_dir() else str(Path(my_path).parent) - exec_py = str(Path(my_path) / 'python.exe') - exec_pypy = str(Path(my_path) / 'pypy3.exe') # PyPy ! - # PyPy >=7.3.6 3.8 aligns to python.exe and Lib\site-packages - python_executable = exec_py if Path(exec_py).is_file() else exec_pypy - return python_executable - -def get_site_packages_path(path = None): - """return the python site-packages""" - my_path = sys.executable if path == None else path # default = current one - my_path = my_path if Path(my_path).is_dir() else str(Path(my_path).parent) - site_py = str(Path(my_path) / 'Lib' / 'site-packages') - site_pypy = str(Path(my_path) / 'site-packages') # PyPy !! - site_packages_path = site_pypy if Path(site_pypy).is_dir() else site_py - return site_packages_path - -def onerror(function, path, excinfo): - """Error handler for `shutil.rmtree`. - - If the error is due to an access error (read-only file), it - attempts to add write permission and then retries. - If the error is for another reason, it re-raises the error. - - Usage: `shutil.rmtree(path, onerror=onerror)""" - if not os.access(path, os.W_OK): - # Is the error an access error? - os.chmod(path, stat.S_IWUSR) - function(path) - else: - raise - - -# Exact copy of 'spyderlib.utils.programs.is_program_installed' function -def is_program_installed(basename): - """Return program absolute path if installed in PATH - Otherwise, return None""" - for path in os.environ["PATH"].split(os.pathsep): - abspath = str(Path(path) / basename) - if Path(abspath).is_file(): - return abspath - - -# ============================================================================= -# Environment variables -# ============================================================================= -def get_env(name, current=True): - """Return HKCU/HKLM environment variable name and value - - For example, get_user_env('PATH') may returns: - ('Path', u'C:\\Program Files\\Intel\\WiFi\\bin\\')""" - root = ( - winreg.HKEY_CURRENT_USER - if current - else winreg.HKEY_LOCAL_MACHINE - ) - key = winreg.OpenKey(root, "Environment") - for index in range(0, winreg.QueryInfoKey(key)[1]): - try: - value = winreg.EnumValue(key, index) - if value[0].lower() == name.lower(): - # Return both value[0] and value[1] because value[0] could be - # different from name (lowercase/uppercase) - return value[0], value[1] - except: - break - - -def set_env(name, value, current=True): - """Set HKCU/HKLM environment variables""" - root = ( - winreg.HKEY_CURRENT_USER - if current - else winreg.HKEY_LOCAL_MACHINE - ) - key = winreg.OpenKey(root, "Environment") - try: - _x, key_type = winreg.QueryValueEx(key, name) - except WindowsError: - key_type = winreg.REG_EXPAND_SZ - key = winreg.OpenKey( - root, "Environment", 0, winreg.KEY_SET_VALUE - ) - winreg.SetValueEx(key, name, 0, key_type, value) - from win32gui import SendMessageTimeout - from win32con import ( - HWND_BROADCAST, - WM_SETTINGCHANGE, - SMTO_ABORTIFHUNG, - ) - - SendMessageTimeout( - HWND_BROADCAST, - WM_SETTINGCHANGE, - 0, - "Environment", - SMTO_ABORTIFHUNG, - 5000, - ) - - -#============================================================================== -# https://stackoverflow.com/questions/580924/how-to-access-a-files-properties-on-windows -def getFileProperties(fname): -#============================================================================== - """ - Read all properties of the given file return them as a dictionary. - """ - import win32api - propNames = ('Comments', 'InternalName', 'ProductName', - 'CompanyName', 'LegalCopyright', 'ProductVersion', - 'FileDescription', 'LegalTrademarks', 'PrivateBuild', - 'FileVersion', 'OriginalFilename', 'SpecialBuild') - - props = {'FixedFileInfo': None, 'StringFileInfo': None, 'FileVersion': None} - - try: - # backslash as parm returns dictionary of numeric info corresponding to VS_FIXEDFILEINFO struc - fixedInfo = win32api.GetFileVersionInfo(fname, '\\') - props['FixedFileInfo'] = fixedInfo - props['FileVersion'] = "%d.%d.%d.%d" % (fixedInfo['FileVersionMS'] / 65536, - fixedInfo['FileVersionMS'] % 65536, fixedInfo['FileVersionLS'] / 65536, - fixedInfo['FileVersionLS'] % 65536) - - # \VarFileInfo\Translation returns list of available (language, codepage) - # pairs that can be used to retreive string info. We are using only the first pair. - lang, codepage = win32api.GetFileVersionInfo(fname, '\\VarFileInfo\\Translation')[0] - - # any other must be of the form \StringfileInfo\%04X%04X\parm_name, middle - # two are language/codepage pair returned from above - - strInfo = {} - for propName in propNames: - strInfoPath = u'\\StringFileInfo\\%04X%04X\\%s' % (lang, codepage, propName) - ## print str_info - strInfo[propName] = win32api.GetFileVersionInfo(fname, strInfoPath) - - props['StringFileInfo'] = strInfo - except: - pass - - return props -# ============================================================================= -# Shortcuts, start menu -# ============================================================================= - - -def get_special_folder_path(path_name): - """Return special folder path""" - from win32com.shell import shell, shellcon - - for maybe in """ - CSIDL_COMMON_STARTMENU CSIDL_STARTMENU CSIDL_COMMON_APPDATA - CSIDL_LOCAL_APPDATA CSIDL_APPDATA CSIDL_COMMON_DESKTOPDIRECTORY - CSIDL_DESKTOPDIRECTORY CSIDL_COMMON_STARTUP CSIDL_STARTUP - CSIDL_COMMON_PROGRAMS CSIDL_PROGRAMS CSIDL_PROGRAM_FILES_COMMON - CSIDL_PROGRAM_FILES CSIDL_FONTS""".split(): - if maybe == path_name: - csidl = getattr(shellcon, maybe) - return shell.SHGetSpecialFolderPath( - 0, csidl, False - ) - raise ValueError( - f"{path_name} is an unknown path ID" - ) - - -def get_winpython_start_menu_folder(current=True): - """Return WinPython Start menu shortcuts folder""" - if current: - # non-admin install - always goes in this user's start menu. - folder = get_special_folder_path("CSIDL_PROGRAMS") - else: - try: - folder = get_special_folder_path( - "CSIDL_COMMON_PROGRAMS" - ) - except OSError: - # No CSIDL_COMMON_PROGRAMS on this platform - folder = get_special_folder_path( - "CSIDL_PROGRAMS" - ) - return str(Path(folder) / 'WinPython') - -def remove_winpython_start_menu_folder(current=True): - """Remove WinPython Start menu folder -- remove it if it already exists""" - path = get_winpython_start_menu_folder(current=current) - if Path(path).is_dir(): - try: - shutil.rmtree(path, onerror=onerror) - except WindowsError: - print( - f"Directory {path} could not be removed", - file=sys.stderr, - ) - -def create_winpython_start_menu_folder(current=True): - """Create WinPython Start menu folder -- remove it if it already exists""" - path = get_winpython_start_menu_folder(current=current) - if Path(path).is_dir(): - try: - shutil.rmtree(path, onerror=onerror) - except WindowsError: - print( - f"Directory {path} could not be removed", - file=sys.stderr, - ) - # create, or re-create ! - os.mkdir(path) - return path - - -def create_shortcut( - path, - description, - filename, - arguments="", - workdir="", - iconpath="", - iconindex=0, - verbose=True, -): - """Create Windows shortcut (.lnk file)""" - import pythoncom - from win32com.shell import shell - - ilink = pythoncom.CoCreateInstance( - shell.CLSID_ShellLink, - None, - pythoncom.CLSCTX_INPROC_SERVER, - shell.IID_IShellLink, - ) - ilink.SetPath(path) - ilink.SetDescription(description) - if arguments: - ilink.SetArguments(arguments) - if workdir: - ilink.SetWorkingDirectory(workdir) - if iconpath or iconindex: - ilink.SetIconLocation(iconpath, iconindex) - # now save it. - ipf = ilink.QueryInterface(pythoncom.IID_IPersistFile) - if not filename.endswith('.lnk'): - filename += '.lnk' - if verbose: - print(f'create menu *{filename}*') - try: - ipf.Save(filename, 0) - except: - print ("a fail !") - pass - - -# ============================================================================= -# Misc. -# ============================================================================= - - -def print_box(text): - """Print text in a box""" - line0 = "+" + ("-" * (len(text) + 2)) + "+" - line1 = "| " + text + " |" - print( - ("\n\n" + "\n".join([line0, line1, line0]) + "\n") - ) - - -def is_python_distribution(path): - """Return True if path is a Python distribution""" - # XXX: This test could be improved but it seems to be sufficient - has_exec = Path(get_python_executable(path)).is_file() - has_site = Path(get_site_packages_path(path)).is_dir() - return has_exec and has_site - - -# ============================================================================= -# Shell, Python queries -# ============================================================================= - - -def decode_fs_string(string): - """Convert string from file system charset to unicode""" - charset = sys.getfilesystemencoding() - if charset is None: - charset = locale.getpreferredencoding() - return string.decode(charset) - - -def exec_shell_cmd(args, path): - """Execute shell command (*args* is a list of arguments) in *path*""" - # print " ".join(args) - process = subprocess.Popen( - args, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - cwd=path, - shell=True - ) - return decode_fs_string(process.stdout.read()) - -def exec_run_cmd(args, path=None): - """run a single command (*args* is a list of arguments) in optional *path*""" - # only applicable to Python-3.5+ - # python-3.7+ allows to replace "stdout and stderr ", per "capture_output=True" - if path: - process = subprocess.run(args, - capture_output=True, - cwd=path, text=True) - #return decode_fs_string(process.stdout) - return process.stdout - else: - process = subprocess.run(args, - capture_output=True, - cwd=path, text=True) - #return decode_fs_string(process.stdout) - return process.stdout - - -def get_r_version(path): - """Return version of the R installed in *path*""" - return ( - exec_shell_cmd('dir ..\README.R*', path) - .splitlines()[-3] - .split("-")[-1] - ) - - -def get_julia_version(path): - """Return version of the Julia installed in *path*""" - return ( - exec_shell_cmd('julia.exe -v', path) - .splitlines()[0] - .split(" ")[-1] - ) - - -def get_nodejs_version(path): - """Return version of the Nodejs installed in *path*""" - return exec_shell_cmd('node -v', path).splitlines()[0] - - -def get_npmjs_version(path): - """Return version of the Nodejs installed in *path*""" - return exec_shell_cmd('npm -v', path).splitlines()[0] - - -def get_pandoc_version(path): - """Return version of the Pandoc executable in *path*""" - return ( - exec_shell_cmd('pandoc -v', path) - .splitlines()[0] - .split(" ")[-1] - ) - - -def python_query(cmd, path): - """Execute Python command using the Python interpreter located in *path*""" - the_exe = get_python_executable(path) - # debug2021-09-12 - # print(f'"{the_exe}" -c "{cmd}"', ' * ', path) - return exec_shell_cmd(f'"{the_exe}" -c "{cmd}"', path).splitlines()[0] - -def python_execmodule(cmd, path): - """Execute Python command using the Python interpreter located in *path*""" - the_exe = get_python_executable(path) - exec_shell_cmd(f'{the_exe} -m {cmd}', path) - - -def get_python_infos(path): - """Return (version, architecture) for the Python distribution located in - *path*. The version number is limited to MAJOR.MINOR, the architecture is - an integer: 32 or 64""" - is_64 = python_query( - 'import sys; print(sys.maxsize > 2**32)', path - ) - arch = {'True': 64, 'False': 32}.get(is_64, None) - ver = python_query( - "import sys;print(f'{sys.version_info.major}.{sys.version_info.minor}')" - , - path, - ) - if re.match(r'([0-9]*)\.([0-9]*)', ver) is None: - ver = None - - return ver, arch - - -def get_python_long_version(path): - """Return long version (X.Y.Z) for the Python distribution located in - *path*""" - ver = python_query( - "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}')" - , - path, - ) - if ( - re.match(r'([0-9]*)\.([0-9]*)\.([0-9]*)', ver) - is None - ): - ver = None - return ver - - -# ============================================================================= -# Patch chebang line (courtesy of Christoph Gohlke) -# ============================================================================= -def patch_shebang_line( - fname, pad=b' ', to_movable=True, targetdir="" -): - """Remove absolute path to python.exe in shebang lines, or re-add it""" - - import re - import sys - import os - - target_dir = targetdir # movable option - if to_movable == False: - target_dir = os.path.abspath(os.path.dirname(fname)) - target_dir = ( - os.path.abspath(os.path.join(target_dir, r'..')) - + '\\' - ) - executable = sys.executable - if sys.version_info[0] == 2: - shebang_line = re.compile( - r"(#!.*pythonw?\.exe)" - ) # Python2.7 - else: - shebang_line = re.compile( - b"(#!.*pythonw?\.exe)" - ) # Python3+ - if 'pypy3' in sys.executable: - shebang_line = re.compile( - b"(#!.*pypy3w?\.exe)" - ) # Pypy3+ - - target_dir = target_dir.encode('utf-8') - with open(fname, 'rb') as fh: - initial_content = fh.read() - fh.close - fh = None - content = shebang_line.split( - initial_content, maxsplit=1 - ) - if len(content) != 3: - return - exe = os.path.basename(content[1][2:]) - content[1] = ( - b'#!' + target_dir + exe - ) # + (pad * (len(content[1]) - len(exe) - 2)) - final_content = b''.join(content) - if initial_content == final_content: - return - try: - with open(fname, 'wb') as fo: - fo.write(final_content) - fo.close - fo = None - print("patched", fname) - except Exception: - print("failed to patch", fname) - - -# ============================================================================= -# Patch shebang line in .py files -# ============================================================================= -def patch_shebang_line_py( - fname, to_movable=True, targetdir="" -): - """Changes shebang line in '.py' file to relative or absolue path""" - import fileinput - import re - import sys - - if sys.version_info[0] == 2: - # Python 2.x doesn't create .py files for .exe files. So, Moving - # WinPython doesn't break running executable files. - return - if to_movable: - exec_path = '#!.\python.exe' - if 'pypy3' in sys.executable: # PyPy ! - exec_path = '#!.\pypy3.exe' - else: - exec_path = '#!' + sys.executable - for line in fileinput.input(fname, inplace=True): - if re.match('^#\!.*python\.exe$', line) is not None: - print(exec_path) - elif re.match('^#\!.*pypy3\.exe$', line) is not None:# PyPy ! - print(exec_path) - else: - print(line, end='') - - -# ============================================================================= -# Guess encoding (shall rather be utf-8 per default) -# ============================================================================= -def guess_encoding(csv_file): - """guess the encoding of the given file""" - # UTF_8_BOM = "\xEF\xBB\xBF" - # Python behavior on UTF-16 not great on write, so we drop it - with io.open(csv_file, "rb") as f: - data = f.read(5) - if data.startswith(b"\xEF\xBB\xBF"): # UTF-8 with a "BOM" (normally no BOM in utf-8) - return ["utf-8-sig"] - else: # in Windows, guessing utf-8 doesn't work, so we have to try - try: - with io.open(csv_file, encoding="utf-8") as f: - preview = f.read(222222) - return ["utf-8"] - except: - return [locale.getdefaultlocale()[1], "utf-8"] - -# ============================================================================= -# Patch sourcefile (instead of forking packages) -# ============================================================================= -def patch_sourcefile( - fname, in_text, out_text, silent_mode=False -): - """Replace a string in a source file""" - import io - - if Path(fname).is_file() and not in_text == out_text: - the_encoding = guess_encoding(fname)[0] - with io.open(fname, 'r', encoding=the_encoding) as fh: - content = fh.read() - new_content = content.replace(in_text, out_text) - if not new_content == content: - if not silent_mode: - print( - "patching ", - fname, - "from", - in_text, - "to", - out_text, - ) - with io.open(fname, 'wt', encoding=the_encoding) as fh: - fh.write(new_content) - - -# ============================================================================= -# Patch sourcelines (instead of forking packages) -# ============================================================================= -def patch_sourcelines( - fname, - in_line_start, - out_line, - endline='\n', - silent_mode=False, -): - """Replace the middle of lines between in_line_start and endline """ - import io - - if Path(fname).is_file(): - the_encoding = guess_encoding(fname)[0] - with io.open(fname, 'r', encoding=the_encoding) as fh: - contents = fh.readlines() - content = "".join(contents) - for l in range(len(contents)): - if contents[l].startswith(in_line_start): - begining, middle = ( - in_line_start, - contents[l][len(in_line_start) :], - ) - ending = "" - if middle.find(endline) > 0: - ending = endline + endline.join( - middle.split(endline)[1:] - ) - middle = middle.split(endline)[0] - middle = out_line - new_line = begining + middle + ending - if not new_line == contents[l]: - if not silent_mode: - print( - "patching ", - fname, - " from\n", - contents[l], - "\nto\n", - new_line, - ) - contents[l] = new_line - new_content = "".join(contents) - if not new_content == content: - # if not silent_mode: - # print("patching ", fname, "from", content, "to", new_content) - with io.open(fname, 'wt', encoding=the_encoding) as fh: - try: - fh.write(new_content) - except: - print( - "impossible to patch", - fname, - "from", - content, - "to", - new_content, - ) - - -# ============================================================================= -# Extract functions -# ============================================================================= -def _create_temp_dir(): - """Create a temporary directory and remove it at exit""" - tmpdir = tempfile.mkdtemp(prefix='wppm_') - atexit.register( - lambda path: shutil.rmtree(path, onerror=onerror), - tmpdir, - ) - return tmpdir - - -def extract_exe(fname, targetdir=None, verbose=False): - """Extract .exe archive to a temporary directory (if targetdir - is None). Return the temporary directory path""" - if targetdir is None: - targetdir = _create_temp_dir() - extract = '7z.exe' - assert is_program_installed(extract), ( - f"Required program '{extract}' was not found" - ) - bname = Path(fname).name - args = ['x', f'-o{targetdir}', '-aos', bname] - if verbose: - retcode = subprocess.call( - [extract] + args, cwd=str(Path(fname).parent) - ) - else: - p = subprocess.Popen( - [extract] + args, - cwd=str(Path(fname).parent), - stdout=subprocess.PIPE, - ) - p.communicate() - p.stdout.close() - retcode = p.returncode - if retcode != 0: - raise RuntimeError( - f"Failed to extract {fname} (return code: {retcode})" - ) - return targetdir - - -def extract_archive(fname, targetdir=None, verbose=False): - """Extract .zip, .exe (considered to be a zip archive) or .tar.gz archive - to a temporary directory (if targetdir is None). - Return the temporary directory path""" - if targetdir is None: - targetdir = _create_temp_dir() - else: - try: - os.mkdir(targetdir) - except: - pass - if Path(fname).suffix in ('.zip', '.exe'): - obj = zipfile.ZipFile(fname, mode="r") - elif fname.endswith('.tar.gz'): - obj = tarfile.open(fname, mode='r:gz') - else: - raise RuntimeError( - f"Unsupported archive filename {fname}" - ) - obj.extractall(path=targetdir) - return targetdir - - -WININST_PATTERN = r'([a-zA-Z0-9\-\_]*|[a-zA-Z\-\_\.]*)-([0-9\.\-]*[a-z]*[0-9]?)(-Qt-([0-9\.]+))?.(win32|win\-amd64)(-py([0-9\.]+))?(-setup)?\.exe' - -# SOURCE_PATTERN defines what an acceptable source package name is -# As of 2014-09-08 : -# - the wheel package format is accepte in source directory -# - the tricky regexp is tuned also to support the odd jolib naming : -# . joblib-0.8.3_r1-py2.py3-none-any.whl, -# . joblib-0.8.3-r1.tar.gz - -SOURCE_PATTERN = r'([a-zA-Z0-9\-\_\.]*)-([0-9\.\_]*[a-z]*[\-]?[0-9]*)(\.zip|\.tar\.gz|\-(py[2-7]*|py[2-7]*\.py[2-7]*)\-none\-any\.whl)' - -# WHEELBIN_PATTERN defines what an acceptable binary wheel package is -# "cp([0-9]*)" to replace per cp(34) for python3.4 -# "win32|win\_amd64" to replace per "win\_amd64" for 64bit -WHEELBIN_PATTERN = r'([a-zA-Z0-9\-\_\.]*)-([0-9\.\_]*[a-z0-9\+]*[0-9]?)-cp([0-9]*)\-[0-9|c|o|n|e|p|m]*\-(win32|win\_amd64)\.whl' - - -def get_source_package_infos(fname): - """Return a tuple (name, version) of the Python source package""" - if fname[-4:] == '.whl': - return Path(fname).name.split("-")[:2] - match = re.match(SOURCE_PATTERN, Path(fname).name) - if match is not None: - return match.groups()[:2] - - -def build_wininst( - root, - python_exe=None, - copy_to=None, - architecture=None, - verbose=False, - installer='bdist_wininst', -): - """Build wininst installer from Python package located in *root* - and eventually copy it to *copy_to* folder. - Return wininst installer full path.""" - if python_exe is None: - python_exe = sys.executable - assert Path(python_exe).is_file() - cmd = [python_exe, 'setup.py', 'build'] - if architecture is not None: - archstr = ( - 'win32' if architecture == 32 else 'win-amd64' - ) - cmd += [f'--plat-name={archstr}'] - cmd += [installer] - # root = a tmp dir in windows\tmp, - if verbose: - subprocess.call(cmd, cwd=root) - else: - p = subprocess.Popen( - cmd, - cwd=root, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - ) - p.communicate() - p.stdout.close() - p.stderr.close() - distdir = str(Path(root) / 'dist') - if not Path(distdir).is_dir(): - raise RuntimeError( - "Build failed: see package README file for further" - " details regarding installation requirements.\n\n" - "For more concrete debugging infos, please try to build " - "the package from the command line:\n" - "1. Open a WinPython command prompt\n" - "2. Change working directory to the appropriate folder\n" - "3. Type `python setup.py build install`" - ) - pattern = WININST_PATTERN.replace( - r'(win32|win\-amd64)', archstr - ) - for distname in os.listdir(distdir): - match = re.match(pattern, distname) - if match is not None: - break - # for wheels (winpython here) - match = re.match(SOURCE_PATTERN, distname) - if match is not None: - break - match = re.match(WHEELBIN_PATTERN, distname) - if match is not None: - break - else: - raise RuntimeError( - f"Build failed: not a pure Python package? {distdir}" - ) - src_fname = str(Path(distdir) / distname) - if copy_to is None: - return src_fname - else: - dst_fname = str(Path(copy_to) / distname) - shutil.move(src_fname, dst_fname) - if verbose: - print( - ( - f"Move: {src_fname} --> {dst_fname}" - ) - ) - # remove tempo dir 'root' no more needed - shutil.rmtree(root, onerror=onerror) - return dst_fname - - -def buildflit_wininst( - root, - python_exe=None, - copy_to=None, - architecture=None, # shall be unused - verbose=False, - installer='bdist_wininst', # unused -): - """Build wininst installer from Python package located in *root* - with flit""" - if python_exe is None: - python_exe = sys.executable - assert Path(python_exe).is_file() - cmd = [python_exe, '-m' ,'flit', 'build'] - if architecture is not None: - archstr = ( - 'win32' if architecture == 32 else 'win-amd64' - ) - # root = a tmp dir in windows\tmp, - if verbose: - subprocess.call(cmd, cwd=root) - else: - p = subprocess.Popen( - cmd, - cwd=root, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - ) - p.communicate() - p.stdout.close() - p.stderr.close() - distdir = str(Path(root) / 'dist') - if not Path(distdir).is_dir(): - raise RuntimeError( - "Build failed: see package README file for further" - " details regarding installation requirements.\n\n" - "For more concrete debugging infos, please try to build " - "the package from the command line:\n" - "1. Open a WinPython command prompt\n" - "2. Change working directory to the appropriate folder\n" - "3. Type `python -m filt build`" - ) - pattern = WININST_PATTERN.replace( - r'(win32|win\-amd64)', archstr - ) - for distname in os.listdir(distdir): - match = re.match(pattern, distname) - if match is not None: - break - # for wheels (winpython here) - match = re.match(SOURCE_PATTERN, distname) - if match is not None: - break - match = re.match(WHEELBIN_PATTERN, distname) - if match is not None: - break - else: - raise RuntimeError( - f"Build failed: not a pure Python package? {distdir}" - ) - src_fname = str(Path(distdir) / distname) - if copy_to is None: - return src_fname - else: - dst_fname = str(Path(copy_to) / distname) - shutil.move(src_fname, dst_fname) - if verbose: - print( - ( - f"Move: {src_fname} --> {dst_fname}" - ) - ) - # remove tempo dir 'root' no more needed - shutil.rmtree(root, onerror=onerror) - return dst_fname - - -def direct_pip_install( - fname, - python_exe=None, - architecture=None, - verbose=False, - install_options=None, -): - """Direct install via pip !""" - copy_to = str(Path(fname).parent) - - if python_exe is None: - python_exe = sys.executable - assert Path(python_exe).is_file() - myroot = str(Path(python_exe).parent) - - cmd = [python_exe, '-m', 'pip', 'install'] - if install_options: - cmd += install_options # typically ['--no-deps'] - print('pip install_options', install_options) - cmd += [fname] - - if verbose: - subprocess.call(cmd, cwd=myroot) - else: - p = subprocess.Popen( - cmd, - cwd=myroot, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - ) - stdout, stderr = p.communicate() - the_log = f"{stdout}" + f"\n {stderr}" - - if ( - ' not find ' in the_log - or ' not found ' in the_log - ): - print(f"Failed to Install: \n {fname} \n") - print(f"msg: {the_log}") - raise RuntimeError - p.stdout.close() - p.stderr.close() - src_fname = fname - if copy_to is None: - return src_fname - else: - if verbose: - print(f"Installed {src_fname}") - return src_fname - - -def do_script( - this_script, - python_exe=None, - copy_to=None, - architecture=None, - verbose=False, - install_options=None, -): - """Execute a script (get-pip typically)""" - if python_exe is None: - python_exe = sys.executable - myroot = os.path.dirname(python_exe) - - # cmd = [python_exe, myroot + r'\Scripts\pip-script.py', 'install'] - cmd = [python_exe] - if install_options: - cmd += install_options # typically ['--no-deps'] - print('script install_options', install_options) - if this_script: - cmd += [this_script] - # print('build_wheel', myroot, cmd) - print("Executing ", cmd) - - if verbose: - subprocess.call(cmd, cwd=myroot) - else: - p = subprocess.Popen( - cmd, - cwd=myroot, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - ) - p.communicate() - p.stdout.close() - p.stderr.close() - if verbose: - print("Executed " , cmd) - return 'ok' - -def columns_width(list_of_lists): - """return the maximum string length of each column of a list of list""" - if not isinstance(list_of_lists, list): - return [0] - - # Transpose the list of lists using zip - transposed_lists = list(zip(*list_of_lists)) - # Calculate the maximum width for each column - column_widths = [max(len(str(item)) for item in sublist) for sublist in transposed_lists] - return column_widths - -def formatted_list(list_of_list, full=False, max_width=70): - """format a list_of_list to fix length columns""" - columns_size = columns_width(list_of_list) - nb_columns = len(columns_size) - - # normalize each columns to columns_size[col] width, in the limit of max_width - - zz = [ - list( - line[col].ljust(columns_size[col])[:max_width] for col in range(nb_columns) - ) - for line in list_of_list - ] - return zz - -if __name__ == '__main__': - - print_box("Test") - dname = sys.prefix - print((dname + ':', '\n', get_python_infos(dname))) - # dname = r'E:\winpython\sandbox\python-2.7.3' - # print dname+':', '\n', get_python_infos(dname) - - tmpdir = r'D:\Tests\winpython_tests' - if not Path(tmpdir).is_dir(): - os.mkdir(tmpdir) - print( - ( - extract_archive( - str(Path(r'D:\WinP\bd37') / 'packages.win-amd64' / - 'python-3.7.3.amd64.zip'), - tmpdir, - ) - ) - ) diff --git a/winpython/wppm.py b/winpython/wppm.py deleted file mode 100644 index 7248e8db..00000000 --- a/winpython/wppm.py +++ /dev/null @@ -1,936 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Copyright © 2012 Pierre Raybaut -# Licensed under the terms of the MIT License -# (see winpython/__init__.py for details) - -""" -WinPython Package Manager - -Created on Fri Aug 03 14:32:26 2012 -""" - -import os -from pathlib import Path -import shutil -import re -import sys -import subprocess -import json - -# Local imports -from winpython import utils -from winpython.config import DATA_PATH -import configparser as cp - -# from former wppm separate script launcher -import textwrap -from argparse import ArgumentParser, HelpFormatter, RawTextHelpFormatter - -from winpython import piptree - -# import information reader -# importlib_metadata before Python 3.8 -try: - from importlib import metadata as metadata # Python-3.8 - - metadata = metadata.metadata -except: - try: - from importlib_metadata import metadata # = 22.2) - if str(Path(sys.executable).parent) == self.target: - self.pip = piptree.pipdata() - else: - self.pip = piptree.pipdata(Target=utils.get_python_executable(self.target)) - pip_list = self.pip.pip_list() - except: - # if failure back to pip list (will use packages.ini for names) - cmdx = [ - utils.get_python_executable(self.target), # PyPy ! - "-m", - "pip", - "list", - ] - pip_list_raw = utils.exec_run_cmd(cmdx).splitlines() - # pip list gives 2 lines of titles to ignore - pip_list = [l.split() for l in pip_list_raw[2:]] - - # create pip package list - wppm = [ - Package( - f"{i[0].replace('-', '_').lower()}-{i[1]}-py3-none-any.whl", - update=update, - suggested_summary=self.pip.summary(i[0]) if self.pip else None - ) - for i in pip_list - ] - return sorted(wppm, key=lambda tup: tup.name.lower()) - - def find_package(self, name): - """Find installed package""" - for pack in self.get_installed_packages(): - if normalize(pack.name) == normalize(name): - return pack - - def uninstall_existing(self, package): - """Uninstall existing package (or package name)""" - if isinstance(package, str): - pack = self.find_package(package) - else: - pack = self.find_package(package.name) - if pack is not None: - self.uninstall(pack) - - def patch_all_shebang( - self, - to_movable=True, - max_exe_size=999999, - targetdir="", - ): - """make all python launchers relatives""" - import glob - import os - - for ffname in glob.glob(r"%s\Scripts\*.exe" % self.target): - size = os.path.getsize(ffname) - if size <= max_exe_size: - utils.patch_shebang_line( - ffname, - to_movable=to_movable, - targetdir=targetdir, - ) - for ffname in glob.glob(r"%s\Scripts\*.py" % self.target): - utils.patch_shebang_line_py( - ffname, - to_movable=to_movable, - targetdir=targetdir, - ) - - def install(self, package, install_options=None): - """Install package in distribution""" - assert package.is_compatible_with(self) - - # wheel addition - if package.fname.endswith((".whl", ".tar.gz", ".zip")): - self.install_bdist_direct(package, install_options=install_options) - self.handle_specific_packages(package) - # minimal post-install actions - self.patch_standard_packages(package.name) - - def do_pip_action(self, actions=None, install_options=None): - """Do pip action in a distribution""" - my_list = install_options - if my_list is None: - my_list = [] - my_actions = actions - if my_actions is None: - my_actions = [] - executing = str(Path(self.target).parent / "scripts" / "env.bat") - if Path(executing).is_file(): - complement = [ - r"&&", - "cd", - "/D", - self.target, - r"&&", - utils.get_python_executable(self.target), - # Before PyPy: osp.join(self.target, 'python.exe') - ] - complement += ["-m", "pip"] - else: - executing = utils.get_python_executable(self.target) - # Before PyPy: osp.join(self.target, 'python.exe') - complement = ["-m", "pip"] - try: - fname = utils.do_script( - this_script=None, - python_exe=executing, - architecture=self.architecture, - verbose=self.verbose, - install_options=complement + my_actions + my_list, - ) - except RuntimeError: - if not self.verbose: - print("Failed!") - raise - - def patch_standard_packages(self, package_name="", to_movable=True): - """patch Winpython packages in need""" - import filecmp - - # Adpating to PyPy - if "pypy3" in Path(utils.get_python_executable(self.target)).name: - site_package_place = "\\site-packages\\" - else: - site_package_place = "\\Lib\\site-packages\\" - # 'pywin32' minimal post-install (pywin32_postinstall.py do too much) - if package_name.lower() == "pywin32" or package_name == "": - origin = self.target + site_package_place + "pywin32_system32" - - destin = self.target - if Path(origin).is_dir(): - for name in os.listdir(origin): - here, there = ( - str(Path(origin) / name), - str(Path(destin) / name), - ) - if not Path(there).exists() or not filecmp.cmp(here, there): - shutil.copyfile(here, there) - # 'pip' to do movable launchers (around line 100) !!!! - # rational: https://github.com/pypa/pip/issues/2328 - if package_name.lower() == "pip" or package_name == "": - # ensure pip will create movable launchers - # sheb_mov1 = classic way up to WinPython 2016-01 - # sheb_mov2 = tried way, but doesn't work for pip (at least) - sheb_fix = " executable = get_executable()" - sheb_mov1 = " executable = os.path.join(os.path.basename(get_executable()))" - sheb_mov2 = ( - " executable = os.path.join('..',os.path.basename(get_executable()))" - ) - - # Adpating to PyPy - the_place = site_package_place + r"pip\_vendor\distlib\scripts.py" - print(the_place) - if to_movable: - utils.patch_sourcefile( - self.target + the_place, - sheb_fix, - sheb_mov1, - ) - utils.patch_sourcefile( - self.target + the_place, - sheb_mov2, - sheb_mov1, - ) - else: - utils.patch_sourcefile( - self.target + the_place, - sheb_mov1, - sheb_fix, - ) - utils.patch_sourcefile( - self.target + the_place, - sheb_mov2, - sheb_fix, - ) - # ensure pip wheel will register relative PATH in 'RECORD' files - # will be in standard pip 8.0.3 - utils.patch_sourcefile( - self.target + (site_package_place + r"pip\wheel.py"), - " writer.writerow((f, h, l))", - " writer.writerow((normpath(f, lib_dir), h, l))", - ) - - # create movable launchers for previous package installations - self.patch_all_shebang(to_movable=to_movable) - if package_name.lower() == "spyder" or package_name == "": - # spyder don't goes on internet without I ask - utils.patch_sourcefile( - self.target + (site_package_place + r"spyderlib\config\main.py"), - "'check_updates_on_startup': True,", - "'check_updates_on_startup': False,", - ) - utils.patch_sourcefile( - self.target + (site_package_place + r"spyder\config\main.py"), - "'check_updates_on_startup': True,", - "'check_updates_on_startup': False,", - ) - # workaround bad installers - if package_name.lower() == "numba": - self.create_pybat(["numba"]) - else: - self.create_pybat(package_name.lower()) - - def create_pybat( - self, - names="", - contents=r"""@echo off -..\python "%~dpn0" %*""", - ): - """Create launcher batch script when missing""" - - scriptpy = str(Path(self.target) / "Scripts") # std Scripts of python - - # PyPy has no initial Scipts directory - if not Path(scriptpy).is_dir(): - os.mkdir(scriptpy) - if not list(names) == names: - my_list = [ - f for f in os.listdir(scriptpy) if "." not in f and f.startswith(names) - ] - else: - my_list = names - for name in my_list: - if Path(scriptpy).is_dir() and (Path(scriptpy) / name).is_file(): - if ( - not (Path(scriptpy) / (name + ".exe")).is_file() - and not (Path(scriptpy) / (name + ".bat")).is_file() - ): - fd = open( - str(Path(scriptpy) / (name + ".bat")), - "w", - ) - fd.write(contents) - fd.close() - - def handle_specific_packages(self, package): - """Packages requiring additional configuration""" - if package.name.lower() in ( - "pyqt4", - "pyqt5", - "pyside2", - ): - # Qt configuration file (where to find Qt) - name = "qt.conf" - contents = """[Paths] -Prefix = . -Binaries = .""" - self.create_file( - package, - name, - str(Path("Lib") / "site-packages" / package.name), - contents, - ) - self.create_file( - package, - name, - ".", - contents.replace( - ".", - f"./Lib/site-packages/{package.name}", - ), - ) - # pyuic script - if package.name.lower() == "pyqt5": - # see http://code.activestate.com/lists/python-list/666469/ - tmp_string = r"""@echo off -if "%WINPYDIR%"=="" call "%~dp0..\..\scripts\env.bat" -"%WINPYDIR%\python.exe" -m PyQt5.uic.pyuic %1 %2 %3 %4 %5 %6 %7 %8 %9""" - else: - tmp_string = r"""@echo off -if "%WINPYDIR%"=="" call "%~dp0..\..\scripts\env.bat" -"%WINPYDIR%\python.exe" "%WINPYDIR%\Lib\site-packages\package.name\uic\pyuic.py" %1 %2 %3 %4 %5 %6 %7 %8 %9""" - # PyPy adaption: python.exe or pypy3.exe - my_exec = Path(utils.get_python_executable(self.target)).name - tmp_string = tmp_string.replace("python.exe", my_exec) - - self.create_file( - package, - f"pyuic{package.name[-1]}.bat", - "Scripts", - tmp_string.replace("package.name", package.name), - ) - # Adding missing __init__.py files (fixes Issue 8) - uic_path = str(Path("Lib") / "site-packages" / package.name / "uic") - for dirname in ("Loader", "port_v2", "port_v3"): - self.create_file( - package, - "__init__.py", - str(Path(uic_path) / dirname), - "", - ) - - def _print(self, package, action): - """Print package-related action text (e.g. 'Installing') - indicating progress""" - text = " ".join([action, package.name, package.version]) - if self.verbose: - utils.print_box(text) - else: - if self.indent: - text = (" " * 4) + text - print(text + "...", end=" ") - - def _print_done(self): - """Print OK at the end of a process""" - if not self.verbose: - print("OK") - - def uninstall(self, package): - """Uninstall package from distribution""" - self._print(package, "Uninstalling") - if not package.name == "pip": - # trick to get true target (if not current) - this_executable_path = self.target - this_exec = utils.get_python_executable(self.target) # PyPy ! - subprocess.call( - [ - this_exec, - "-m", - "pip", - "uninstall", - package.name, - "-y", - ], - cwd=this_executable_path, - ) - # no more legacy, no package are installed by old non-pip means - self._print_done() - - def install_bdist_direct(self, package, install_options=None): - """Install a package directly !""" - self._print( - package, - f"Installing {package.fname.split('.')[-1]}", - ) - try: - fname = utils.direct_pip_install( - package.fname, - python_exe=utils.get_python_executable(self.target), # PyPy ! - architecture=self.architecture, - verbose=self.verbose, - install_options=install_options, - ) - except RuntimeError: - if not self.verbose: - print("Failed!") - raise - package = Package(fname) - self._print_done() - - def install_script(self, script, install_options=None): - try: - fname = utils.do_script( - script, - python_exe=utils.get_python_executable(self.target), # PyPy3 ! - architecture=self.architecture, - verbose=self.verbose, - install_options=install_options, - ) - except RuntimeError: - if not self.verbose: - print("Failed!") - raise - - -def main(test=False): - if test: - sbdir = str(Path(__file__).parents[0].parent.parent.parent / "sandbox") - tmpdir = str(Path(sbdir) / "tobedeleted") - - fname = str(Path(sbdir) / "VTK-5.10.0-Qt-4.7.4.win32-py2.7.exe") - print(Package(fname)) - sys.exit() - target = str( - Path(utils.BASE_DIR) / "build" / "winpython-2.7.3" / "python-2.7.3" - ) - fname = str(Path(utils.BASE_DIR) / "packages.src" / "docutils-0.9.1.tar.gz") - - dist = Distribution(target, verbose=True) - pack = Package(fname) - print(pack.description) - # dist.install(pack) - # dist.uninstall(pack) - else: - bold = "\033[1m" - unbold = "\033[0m" - registerWinPythonHelp = f"Register distribution: associate file extensions, icons and context menu with this WinPython" - - unregisterWinPythonHelp = f"Unregister distribution: de-associate file extensions, icons and context menu from this WinPython" - - parser = ArgumentParser( - description="WinPython Package Manager: handle a WinPython Distribution and its packages", - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument( - "fname", - metavar="package", - nargs="?", - default="", - type=str, - help="optional package name or package wheel", - ) - parser.add_argument( - "--register", - dest="registerWinPython", - action="store_const", - const=True, - default=False, - help=registerWinPythonHelp, - ) - parser.add_argument( - "--unregister", - dest="unregisterWinPython", - action="store_const", - const=True, - default=False, - help=unregisterWinPythonHelp, - ) - parser.add_argument( - "-v", - "--verbose", - dest="verbose", - action="store_const", - const=True, - default=False, - help="show more details on packages and actions", - ) - parser.add_argument( - "-ls", - "--list", - dest="list", - action="store_const", - const=True, - default=False, - help=f"list packages matching the given [optionnal] package expression: {unbold}wppm -ls{unbold}, {unbold}wppm -ls pand{unbold}", - ) - parser.add_argument( - "-p", - dest="pipdown", - action="store_const", - const=True, - default=False, - help=f"show Package dependancies of the given package[option]: {unbold}wppm -p pandas[test]{unbold}", - ) - parser.add_argument( - "-r", - dest="pipup", - action="store_const", - const=True, - default=False, - help=f"show Reverse dependancies of the given package[option]: {unbold}wppm -r pytest[test]{unbold}", - ) - parser.add_argument( - "-l", - dest="levels", - type=int, - default=2, - help=f"show 'LEVELS' levels of dependancies of the package, default is 2: {unbold}wppm -p pandas -l1{unbold}", - ) - parser.add_argument( - "-lsa", - dest="all", - action="store_const", - const=True, - default=False, - help=f"list details of package names matching given regular expression: {unbold}wppm -lsa pandas -l1{unbold}", - ) - parser.add_argument( - "-t", - dest="target", - default=sys.prefix, - help=f'path to target Python distribution (default: "{sys.prefix}")', - ) - parser.add_argument( - "-i", - "--install", - dest="install", - action="store_const", - const=True, - default=False, - help="install a given package wheel (use pip for more features)", - ) - parser.add_argument( - "-u", - "--uninstall", - dest="uninstall", - action="store_const", - const=True, - default=False, - help="uninstall package (use pip for more features)", - ) - args = parser.parse_args() - targetpython = None - if args.target and not args.target==sys.prefix: - targetpython = args.target if args.target[-4:] == '.exe' else str(Path(args.target) / 'python.exe') - # print(targetpython.resolve() to check) - if args.install and args.uninstall: - raise RuntimeError("Incompatible arguments: --install and --uninstall") - if args.registerWinPython and args.unregisterWinPython: - raise RuntimeError("Incompatible arguments: --install and --uninstall") - if args.pipdown: - pip = piptree.pipdata(Target=targetpython) - pack, extra, *other = (args.fname + "[").replace("]", "[").split("[") - pip.down(pack, extra, args.levels, verbose=args.verbose) - sys.exit() - elif args.pipup: - pip = piptree.pipdata(Target=targetpython) - pack, extra, *other = (args.fname + "[").replace("]", "[").split("[") - pip.up(pack, extra, args.levels, verbose=args.verbose) - sys.exit() - elif args.list: - pip = piptree.pipdata(Target=targetpython) - todo = [l for l in pip.pip_list(full=True) if bool(re.search(args.fname, l[0])) ] - titles = [['Package', 'Version', 'Summary'],['_' * max(x, 6) for x in utils.columns_width(todo)]] - listed = utils.formatted_list(titles + todo) - for p in listed: - print(*p) - sys.exit() - elif args.all: - pip = piptree.pipdata(Target=targetpython) - todo = [l for l in pip.pip_list(full=True) if bool(re.search(args.fname, l[0])) ] - for l in todo: - # print(pip.distro[l[0]]) - title = f"** Package: {l[0]} **" - print("\n"+"*"*len(title), f"\n{title}", "\n"+"*"*len(title) ) - for key, value in pip.raw[l[0]].items(): - rawtext=json.dumps(value, indent=2, ensure_ascii=False) - lines = [l for l in rawtext.split(r"\n") if len(l.strip()) > 2] - if key.lower() != 'description' or args.verbose==True: - print(f"{key}: ", "\n".join(lines).replace('"', "")) - sys.exit() - if args.registerWinPython: - print(registerWinPythonHelp) - if utils.is_python_distribution(args.target): - dist = Distribution(args.target) - else: - raise WindowsError(f"Invalid Python distribution {args.target}") - print(f"registering {args.target}") - print("continue ? Y/N") - theAnswer = input() - if theAnswer == "Y": - from winpython import associate - - associate.register(dist.target, verbose=args.verbose) - sys.exit() - if args.unregisterWinPython: - print(unregisterWinPythonHelp) - if utils.is_python_distribution(args.target): - dist = Distribution(args.target) - else: - raise WindowsError(f"Invalid Python distribution {args.target}") - print(f"unregistering {args.target}") - print("continue ? Y/N") - theAnswer = input() - if theAnswer == "Y": - from winpython import associate - - associate.unregister(dist.target, verbose=args.verbose) - sys.exit() - elif not args.install and not args.uninstall: - args.install = True - if not Path(args.fname).is_file() and args.install: - if args.fname == "": - parser.print_help() - sys.exit() - else: - raise IOError(f"File not found: {args.fname}") - if utils.is_python_distribution(args.target): - dist = Distribution(args.target) - try: - if args.uninstall: - package = dist.find_package(args.fname) - dist.uninstall(package) - else: - package = Package(args.fname) - if args.install and package.is_compatible_with(dist): - dist.install(package) - else: - raise RuntimeError( - "Package is not compatible with Python " - f"{dist.version} {dist.architecture}bit" - ) - except NotImplementedError: - raise RuntimeError("Package is not (yet) supported by WPPM") - else: - raise WindowsError(f"Invalid Python distribution {args.target}") - - -if __name__ == "__main__": - main() \ No newline at end of file diff --git a/winpython_builds_bd13.toml b/winpython_builds_bd13.toml new file mode 100644 index 00000000..d5864fb8 --- /dev/null +++ b/winpython_builds_bd13.toml @@ -0,0 +1,57 @@ +[pythons] +"311" = { python_target_release = "3119", release = "2", my_release_level = "b4" } +"312" = { python_target_release = "31210", release = "2", my_release_level = "b4" } +"313" = { python_target_release = "31311", release = "0", my_release_level = "b4" } +"314" = { python_target_release = "3142", release = "0", my_release_level = "b4" } + + +[[builds]] +name = "dot" +root_dir_for_builds = "C:\\Winp" +python_target = "313" +pyver = "3.13" +flavor = "dot" +arch = "64" +create_installer = "7zip.zip" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd313\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd313\\dot_requirements.txt" +source_dirs = "C:\\Winp\\bd313\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + +[[builds]] +name = "slim" +root_dir_for_builds = "C:\\Winp" +python_target = "313" +pyver = "3.13" +flavor = "slim" +arch = "64" +create_installer = "7zip.7z" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd313\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd313\\requirements64_slim.txt" +source_dirs = "C:\\Winp\\bd313\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\tools64_pandoc_alone" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + +[[builds]] +name = "whl" +root_dir_for_builds = "C:\\Winp" +python_target = "313" +pyver = "3.13" +flavor = "whl" +arch = "64" +create_installer = ".7z-mx9" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd313\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd313\\dot_requirements.txt" +source_dirs = "C:\\Winp\\bd313\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" +wheelhousereq = "C:\\Winp\\bd313\\requirements64_whl.txt" diff --git a/winpython_builds_bd14.toml b/winpython_builds_bd14.toml new file mode 100644 index 00000000..f852b650 --- /dev/null +++ b/winpython_builds_bd14.toml @@ -0,0 +1,96 @@ +[pythons] +"311" = { python_target_release = "3119", release = "2", my_release_level = "b4" } +"312" = { python_target_release = "31210", release = "2", my_release_level = "b4" } +"313" = { python_target_release = "31311", release = "0", my_release_level = "b4" } +"314" = { python_target_release = "3142", release = "0", my_release_level = "b4" } + + + + + +[[builds]] +name = "dot" +root_dir_for_builds = "C:\\Winp" +python_target = "314" +pyver = "3.14" +flavor = "dot" +arch = "64" +create_installer = "7zip.zip" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd314\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd314\\dot_requirements.txt" +source_dirs = "C:\\Winp\\bd314\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + +[[builds]] +name = "free" +root_dir_for_builds = "C:\\Winp" +python_target = "314" +pyver = "3.14" +flavor = "free" +arch = "64" +create_installer = "7zip.zip" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd314\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd314\\dot_requirements.txt" +source_dirs = "C:\\Winp\\bd314\\packages.win-amd64t" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + + +[[builds]] +name = "slim" +root_dir_for_builds = "C:\\Winp" +python_target = "314" +pyver = "3.14" +flavor = "slim" +arch = "64" +create_installer = "None" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd314\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd314\\requirements_slim.txt" +source_dirs = "C:\\Winp\\bd314\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\tools64_pandoc_alone" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + + +[[builds]] +name = "slimf" +root_dir_for_builds = "C:\\Winp" +python_target = "314" +pyver = "3.14" +flavor = "slimf" +arch = "64" +create_installer = "None" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd314\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd314\\requirements_slimf.txt" +source_dirs = "C:\\Winp\\bd314\\packages.win-amd64t" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" + + +[[builds]] +name = "whl" +root_dir_for_builds = "C:\\Winp" +python_target = "314" +pyver = "3.14" +flavor = "whl" +arch = "64" +create_installer = ".7z-mx9" +preclear_build_directory = "Yes" +mandatory_requirements = "C:\\Winp\\bd314\\mandatory_requirements.txt" +requirements = "C:\\Winp\\bd314\\dot_requirements.txt" +source_dirs = "C:\\Winp\\bd314\\packages.win-amd64" +find_links = "C:\\Winp\\packages.srcreq" +toolsdirs = "C:\\Winp\\bdTools\\Tools.dot" +install_options = "--no-index --pre --trusted-host=None --upgrade" +wheelhousereq = "C:\\Winp\\bd314\\requirements_whl.txt" diff --git a/wppm/__init__.py b/wppm/__init__.py new file mode 100644 index 00000000..26591e03 --- /dev/null +++ b/wppm/__init__.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +""" +WinPython License Agreement (MIT License) +----------------------------------------- + +Copyright (c) 2012-2013 Pierre Raybaut +Copyright (c) 2014-2025+ The Winpython development team https://github.com/winpython/ + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. +""" + +__version__ = '17.2.20250823' +__license__ = __doc__ +__project_url__ = 'http://winpython.github.io/' diff --git a/wppm/__main__.py b/wppm/__main__.py new file mode 100644 index 00000000..f34bb5e4 --- /dev/null +++ b/wppm/__main__.py @@ -0,0 +1,6 @@ +import os +import sys +if __name__ == "__main__": + from wppm import wppm + + sys.exit(wppm.main()) \ No newline at end of file diff --git a/wppm/associate.py b/wppm/associate.py new file mode 100644 index 00000000..49da0ca0 --- /dev/null +++ b/wppm/associate.py @@ -0,0 +1,301 @@ +# -*- coding: utf-8 -*- +# +# associate.py = Register a Python distribution +# Copyright © 2012 Pierre Raybaut +# Licensed under the terms of the MIT License +# (see winpython/__init__.py for details) + +import sys +import os +from pathlib import Path +import importlib.util +import winreg +from . import utils +from argparse import ArgumentParser +import shutil + +def get_special_folder_path(path_name): + """Return special folder path.""" + from win32com.shell import shell, shellcon + try: + csidl = getattr(shellcon, path_name) + return shell.SHGetSpecialFolderPath(0, csidl, False) + except OSError: + print(f"{path_name} is an unknown path ID") + +def get_winpython_start_menu_folder(current=True): + """Return WinPython Start menu shortcuts folder.""" + folder = get_special_folder_path("CSIDL_PROGRAMS") + if not current: + try: + folder = get_special_folder_path("CSIDL_COMMON_PROGRAMS") + except OSError: + pass + return str(Path(folder) / 'WinPython') + +def remove_winpython_start_menu_folder(current=True): + """Remove WinPython Start menu folder -- remove it if it already exists""" + path = get_winpython_start_menu_folder(current=current) + if Path(path).is_dir(): + try: + shutil.rmtree(path) + except WindowsError: + print(f"Directory {path} could not be removed", file=sys.stderr) + +def create_winpython_start_menu_folder(current=True): + """Create WinPython Start menu folder.""" + path = get_winpython_start_menu_folder(current=current) + if Path(path).is_dir(): + try: + shutil.rmtree(path) + except WindowsError: + print(f"Directory {path} could not be removed", file=sys.stderr) + Path(path).mkdir(parents=True, exist_ok=True) + return path + +def create_shortcut(path, description, filename, arguments="", workdir="", iconpath="", iconindex=0, verbose=True): + """Create Windows shortcut (.lnk file).""" + import pythoncom + from win32com.shell import shell + ilink = pythoncom.CoCreateInstance(shell.CLSID_ShellLink, None, pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IShellLink) + ilink.SetPath(path) + ilink.SetDescription(description) + if arguments: + ilink.SetArguments(arguments) + if workdir: + ilink.SetWorkingDirectory(workdir) + if iconpath or iconindex: + ilink.SetIconLocation(iconpath, iconindex) + # now save it. + ipf = ilink.QueryInterface(pythoncom.IID_IPersistFile) + if not filename.endswith('.lnk'): + filename += '.lnk' + if verbose: + print(f'create menu *{filename}*') + try: + ipf.Save(filename, 0) + except: + print("a fail !") + +# --- Helper functions for Registry --- + +def _set_reg_value(root, key_path, name, value, reg_type=winreg.REG_SZ, verbose=False): + """Helper to create key and set a registry value using CreateKeyEx.""" + rootkey_name = "HKEY_CURRENT_USER" if root == winreg.HKEY_CURRENT_USER else "HKEY_LOCAL_MACHINE" + if verbose: + print(f"{rootkey_name}\\{key_path}\\{name if name else ''}:{value}") + try: + # Use CreateKeyEx with context manager for automatic closing + with winreg.CreateKeyEx(root, key_path, 0, winreg.KEY_WRITE) as key: + winreg.SetValueEx(key, name, 0, reg_type, value) + except OSError as e: + print(f"Error creating/setting registry value {rootkey_name}\\{key_path}\\{name}: {e}", file=sys.stderr) + +def _delete_reg_key(root, key_path, verbose=False): + """Helper to delete a registry key, ignoring if not found.""" + rootkey_name = "HKEY_CURRENT_USER" if root == winreg.HKEY_CURRENT_USER else "HKEY_LOCAL_MACHINE" + if verbose: + print(f"{rootkey_name}\\{key_path}") + try: + # DeleteKey can only delete keys with no subkeys. + # For keys with (still) subkeys, use DeleteKeyEx on the parent key if available + winreg.DeleteKey(root, key_path) + except FileNotFoundError: + if verbose: + print(f"Registry key not found (skipping deletion): {rootkey_name}\\{key_path}") + except OSError as e: # Catch other potential errors like key not empty + print(f"Error deleting registry key {rootkey_name}\\{key_path}: {e}", file=sys.stderr) + + +# --- Helper functions for Start Menu Shortcuts --- + +def _has_pywin32(): + """Check if pywin32 (pythoncom) is installed.""" + return importlib.util.find_spec('pythoncom') is not None + +def _remove_start_menu_folder(target, current=True, has_pywin32=False): + "remove menu Folder for target WinPython if pywin32 exists" + if has_pywin32: + remove_winpython_start_menu_folder(current=current) + else: + print("Skipping start menu removal as pywin32 package is not installed.") + +def _get_shortcut_data(target, current=True, has_pywin32=False): + "get windows menu access data if pywin32 exists, otherwise empty list" + if not has_pywin32: + return [] + + wpdir = str(Path(target).parent) + data = [] + for name in os.listdir(wpdir): + bname, ext = Path(name).stem, Path(name).suffix + if ext.lower() == ".exe": + # Path for the shortcut file in the start menu folder + shortcut_name = str(Path(create_winpython_start_menu_folder(current=current)) / bname) + '.lnk' + data.append( + ( + str(Path(wpdir) / name), # Target executable path + bname, # Description/Name + shortcut_name, # Shortcut file path + ) + ) + return data + +# --- PythonCore entries (PEP-0514 and WinPython specific) --- + + +def register_in_registery(target, current=True, reg_type=winreg.REG_SZ, verbose=True) -> tuple[list[any], ...]: + """Register in Windows (like regedit)""" + + # --- Constants --- + DROP_HANDLER_CLSID = "{60254CA5-953B-11CF-8C96-00AA00B8708C}" + + # --- CONFIG --- + target_path = Path(target).resolve() + python_exe = str(target_path / "python.exe") + pythonw_exe = str(target_path / "pythonw.exe") + spyder_exe = str(target_path.parent / "Spyder.exe") + icon_py = str(target_path / "DLLs" / "py.ico") + icon_pyc = str(target_path / "DLLs" / "pyc.ico") + idle_path = str(target_path / "Lib" / "idlelib" / "idle.pyw") + doc_path = str(target_path / "Doc" / "html" / "index.html") + python_infos = utils.get_python_infos(target) # ('3.11', 64) + short_version = python_infos[0] # e.g., '3.11' + version = utils.get_python_long_version(target) # e.g., '3.11.5' + arch = f'{python_infos[1]}bit' # e.g., '64bit' + display = f"Python {version} ({arch})" + + permanent_entries = [] # key_path, name, value + dynamic_entries = [] # key_path, name, value + core_entries = [] # key_path, name, value + lost_entries = [] # intermediate keys to remove later + # --- File associations --- + ext_map = {".py": "Python.File", ".pyw": "Python.NoConFile", ".pyc": "Python.CompiledFile"} + ext_label = {".py": "Python File", ".pyw": "Python File (no console)", ".pyc": "Compiled Python File"} + for ext, ftype in ext_map.items(): + permanent_entries.append((f"Software\\Classes\\{ext}", None, ftype)) + if ext in (".py", ".pyw"): + permanent_entries.append((f"Software\\Classes\\{ext}", "Content Type", "text/plain")) + + # --- Descriptions, Icons, DropHandlers --- + for ext, ftype in ext_map.items(): + dynamic_entries.append((f"Software\\Classes\\{ftype}", None, ext_label[ext])) + dynamic_entries.append((f"Software\\Classes\\{ftype}\\DefaultIcon", None, icon_py if "Compiled" not in ftype else icon_pyc)) + dynamic_entries.append((f"Software\\Classes\\{ftype}\\shellex\\DropHandler", None, DROP_HANDLER_CLSID)) + lost_entries.append((f"Software\\Classes\\{ftype}\\shellex", None, None)) + + # --- Shell commands --- + for ext, ftype in ext_map.items(): + dynamic_entries.append((f"Software\\Classes\\{ftype}\\shell\\open\\command", None, f'''"{pythonw_exe if ftype=='Python.NoConFile' else python_exe}" "%1" %*''')) + lost_entries.append((f"Software\\Classes\\{ftype}\\shell\\open", None, None)) + lost_entries.append((f"Software\\Classes\\{ftype}\\shell", None, None)) + + dynamic_entries.append((rf"Software\Classes\Python.File\shell\Edit with IDLE\command", None, f'"{pythonw_exe}" "{idle_path}" -n -e "%1"')) + dynamic_entries.append((rf"Software\Classes\Python.NoConFile\shell\Edit with IDLE\command", None, f'"{pythonw_exe}" "{idle_path}" -n -e "%1"')) + lost_entries.append((rf"Software\Classes\Python.File\shell\Edit with IDLE", None, None)) + lost_entries.append((rf"Software\Classes\Python.NoConFile\shell\Edit with IDLE", None, None)) + + if Path(spyder_exe).exists(): + dynamic_entries.append((rf"Software\Classes\Python.File\shell\Edit with Spyder\command", None, f'"{spyder_exe}" "%1" -w "%w"')) + dynamic_entries.append((rf"Software\Classes\Python.NoConFile\shell\Edit with Spyder\command", None, f'"{spyder_exe}" "%1" -w "%w"')) + lost_entries.append((rf"Software\Classes\Python.File\shell\Edit with Spyder", None, None)) + lost_entries.append((rf"Software\Classes\Python.NoConFile\shell\Edit with Spyder", None, None)) + + # --- WinPython Core registry entries (PEP 514 style) --- + base = f"Software\\Python\\WinPython\\{short_version}" + core_entries.append((base, "DisplayName", display)) + core_entries.append((base, "SupportUrl", "https://winpython.github.io")) + core_entries.append((base, "SysVersion", short_version)) + core_entries.append((base, "SysArchitecture", arch)) + core_entries.append((base, "Version", version)) + + core_entries.append((f"{base}\\InstallPath", None, str(target))) + core_entries.append((f"{base}\\InstallPath", "ExecutablePath", python_exe)) + core_entries.append((f"{base}\\InstallPath", "WindowedExecutablePath", pythonw_exe)) + core_entries.append((f"{base}\\InstallPath\\InstallGroup", None, f"Python {short_version}")) + + core_entries.append((f"{base}\\Modules", None, "")) + core_entries.append((f"{base}\\PythonPath", None, f"{target}\\Lib;{target}\\DLLs")) + core_entries.append((f"{base}\\Help\\Main Python Documentation", None, doc_path)) + lost_entries.append((f"{base}\\Help", None, None)) + lost_entries.append((f"Software\\Python\\WinPython", None, None)) + + return permanent_entries, dynamic_entries, core_entries, lost_entries + +# --- Main Register/Unregister Functions --- + +def register(target, current=True, reg_type=winreg.REG_SZ, verbose=True): + """Register a Python distribution in Windows registry and create Start Menu shortcuts""" + root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE + has_pywin32 = _has_pywin32() + + if verbose: + print(f'Creating WinPython registry entries for {target}') + + permanent_entries, dynamic_entries, core_entries, lost_entries = register_in_registery(target) + # Set registry entries for given target + for key_path, name, value in permanent_entries + dynamic_entries + core_entries: + _set_reg_value(root, key_path, name, value, verbose=verbose) + + # Create start menu entries + if has_pywin32: + if verbose: + print(f'Creating WinPython menu for all icons in {Path(target).parent}') + for path, desc, fname in _get_shortcut_data(target, current=current, has_pywin32=True): + try: + create_shortcut(path, desc, fname, verbose=verbose) + except Exception as e: + print(f"Error creating shortcut for {desc} at {fname}: {e}", file=sys.stderr) + else: + print("Skipping start menu shortcut creation as pywin32 package is needed.") + +def unregister(target, current=True, verbose=True): + """Unregister a Python distribution from Windows registry and remove Start Menu shortcuts""" + root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE + has_pywin32 = _has_pywin32() + + if verbose: + print(f'Removing WinPython registry entries for {target}') + + permanent_entries, dynamic_entries, core_entries , lost_entries = register_in_registery(target) + + # List of keys to attempt to delete, ordered from most specific to general + keys_to_delete = sorted(list(set(key_path for key_path , name, value in (dynamic_entries + core_entries + lost_entries))), key=len, reverse=True) + + rootkey_name = "HKEY_CURRENT_USER" if root == winreg.HKEY_CURRENT_USER else "HKEY_LOCAL_MACHINE" + for key_path in keys_to_delete: + _delete_reg_key(root, key_path, verbose=verbose) + + # Remove start menu shortcuts + if has_pywin32: + if verbose: + print(f'Removing WinPython menu for all icons in {Path(target).parent}') + _remove_start_menu_folder(target, current=current, has_pywin32=True) + # The original code had commented out code to delete .lnk files individually. + else: + print("Skipping start menu removal as pywin32 package is needed.") + + +if __name__ == "__main__": + # Ensure we are running from the target WinPython environment + parser = ArgumentParser(description="Register or Un-register Python file extensions, icons "\ + "and Windows explorer context menu to this "\ + "Python distribution.") + parser.add_argument('--unregister', action="store_true", + help='register to all users, requiring administrative '\ + 'privileges (default: register to current user only)') + parser.add_argument('--all', action="store_true", + help='action is to all users, requiring administrative '\ + 'privileges (default: to current user only)') + args = parser.parse_args() + expected_target = Path(sys.prefix) + command = "unregister" if args.unregister else "register" + users = "all" if args.all else "user" + print(f"Attempting to {command} the Python environment for {users} at: {expected_target}") + + target_dir = sys.prefix # Or get from arguments + is_current_user = True # Or get from arguments + if command == "register": + register(expected_target, current=not args.all) + else: + unregister(expected_target, current=not args.all) diff --git a/wppm/diff.py b/wppm/diff.py new file mode 100644 index 00000000..5e1de9b2 --- /dev/null +++ b/wppm/diff.py @@ -0,0 +1,211 @@ +# -*- coding: utf-8 -*- +# +# WinPython diff.py script (streamlined, with historical and flexible modes) +# Copyright © 2013 Pierre Raybaut +# Copyright © 2014-2025+ The Winpython development team https://github.com/winpython/ +# Licensed under the terms of the MIT License + +import os +import re +import sys +import shutil +from pathlib import Path +from packaging import version +from . import utils + +CHANGELOGS_DIR = Path(__file__).parent.parent / "changelogs" + +class Package: + PATTERNS = [ + r"\[([\w\-\:\/\.\_]+)\]\(([^)]+)\) \| ([^\|]*) \| ([^\|]*)", # SourceForge + r"\[([\w\-\:\/\.\_]+) ([^\]\ ]+)\] \| ([^\|]*) \| ([^\|]*)" # Google Code + ] + def __init__(self, text=None): + self.name = self.url = self.version = self.description = None + if text: + self.from_text(text) + def from_text(self, text): + for pattern in self.PATTERNS: + match = re.match(pattern, text) + if match: + self.name, self.url, self.version, self.description = match.groups() + return + raise ValueError(f"Unrecognized package line format: {text}") + +class PackageIndex: + HEADERS = {"tools": "### Tools", "python": "### Python packages", "wheelhouse": "### WheelHouse packages"} + BLANKS = ["Name | Version | Description", "-----|---------|------------", "", "

", "
"] + + def __init__(self, content): + self.packages = {k: {} for k in self.HEADERS} + self._parse_index(content) + + def _parse_index(self, text): + current = None + for line in text.splitlines(): + if line in self.HEADERS.values(): + current = [k for k, v in self.HEADERS.items() if v == line][0] + continue + if line.strip() in self.BLANKS: + continue + if current: + try: + pkg = Package(line) + self.packages[current][pkg.name] = pkg + except Exception: + continue + +def compare_packages(old, new): + def normalize(d): return {k.replace("-", "_").lower(): v for k, v in d.items()} + old, new = normalize(old), normalize(new) + added = [new[k] for k in new if k not in old] + upgraded = [new[k] for k in new if k in old and new[k].version != old[k].version] + removed = [old[k] for k in old if k not in new] + output = "" + if added: + output += "\nNew packages:\n" + "".join(f" * {p.name} {p.version} ({p.description})\n" for p in added) + if upgraded: + output += "\nUpgraded packages:\n" + "".join(f" * {p.name} {old[p.name].version} → {p.version} ({p.description})\n" for p in upgraded if p.name in old) + if removed: + output += "\nRemoved packages:\n" + "".join(f" * {p.name} {p.version} ({p.description})\n" for p in removed) + return output or "\nNo differences found.\n" + +def compare_markdown_sections(md1, md2, header1="python", header2="python", label1="Input1", label2="Input2"): + pkgs1 = PackageIndex(md1).packages + pkgs2 = PackageIndex(md2).packages + diff = compare_packages(pkgs1[header1], pkgs2[header2]) + # If comparing the same section, use the historical header + if header1 == header2 and header1 in PackageIndex.HEADERS: + title = PackageIndex.HEADERS[header1] + else: + title = f"## {label1} [{header1}] vs {label2} [{header2}]" + return f"{title}\n\n{diff}" + +def compare_markdown_section_pairs(md1, md2, header_pairs, label1="Input1", label2="Input2"): + pkgs1 = PackageIndex(md1).packages + pkgs2 = PackageIndex(md2).packages + text = f"# {label1} vs {label2} section-pairs comparison\n" + for h1, h2 in header_pairs: + diff = compare_packages(pkgs1[h1], pkgs2[h2]) + if diff.strip() and diff != "No differences found.\n": + text += f"\n## {label1} [{h1}] vs {label2} [{h2}]\n\n{diff}\n" + return text + +def compare_files(file1, file2, mode="full", header1=None, header2=None, header_pairs=None): + with open(file1, encoding=utils.guess_encoding(file1)[0]) as f1, \ + open(file2, encoding=utils.guess_encoding(file2)[0]) as f2: + md1, md2 = f1.read(), f2.read() + if mode == "full": + result = "" + for k in PackageIndex.HEADERS: + result += compare_markdown_sections(md1, md2, k, k, file1, file2) + "\n" + return result + elif mode == "section": + return compare_markdown_sections(md1, md2, header1, header2, file1, file2) + elif mode == "pairs": + return compare_markdown_section_pairs(md1, md2, header_pairs, file1, file2) + else: + raise ValueError("Unknown mode.") + +# --- ORIGINAL/HISTORICAL VERSION-TO-VERSION COMPARISON --- + +def find_previous_version(target_version, searchdir=None, flavor="", architecture=64): + search_dir = Path(searchdir) if searchdir else CHANGELOGS_DIR + pattern = re.compile(rf"WinPython{flavor}-{architecture}bit-([0-9\.]+)\.(txt|md)") + versions = [pattern.match(f).group(1) for f in os.listdir(search_dir) if pattern.match(f)] + versions = [v for v in versions if version.parse(v) < version.parse(target_version)] + return max(versions, key=version.parse, default=target_version) + +def load_version_markdown(version, searchdir, flavor="", architecture=64): + filename = Path(searchdir) / f"WinPython{flavor}-{architecture}bit-{version}.md" + if not filename.exists(): + raise FileNotFoundError(f"Changelog not found: {filename}") + with open(filename, "r", encoding=utils.guess_encoding(filename)[0]) as f: + return f.read() + +def compare_package_indexes(version2, version1=None, searchdir=None, flavor="", flavor1=None, architecture=64): + searchdir = Path(searchdir) if searchdir else CHANGELOGS_DIR + version1 = version1 or find_previous_version(version2, searchdir, flavor, architecture) + flavor1 = flavor1 or flavor + md1 = load_version_markdown(version1, searchdir, flavor1, architecture) + md2 = load_version_markdown(version2, searchdir, flavor, architecture) + result = f"# WinPython {architecture}bit {version2}{flavor} vs {version1}{flavor1}\n" + result = ( + f"## History of changes for WinPython-{architecture}bit {version2 + flavor}\r\n\r\n" + f"The following changes were made to WinPython-{architecture}bit distribution since version {version1 + flavor1}.\n\n\n" + "\n" + ) + for k in PackageIndex.HEADERS: + result += compare_markdown_sections(md1, md2, k, k, version1, version2) + "\n" + return result+ "\n\n* * *\n" + +def copy_changelogs(version, searchdir, flavor="", architecture=64, basedir=None): + """Copy all changelogs for a major.minor version into basedir.""" + basever = ".".join(str(version).split(".")[:2]) + pattern = re.compile(rf"WinPython{flavor}-{architecture}bit-{basever}[0-9\.]*\.(txt|md)") + dest = Path(basedir) + for fname in os.listdir(searchdir): + if pattern.match(fname): + shutil.copyfile(Path(searchdir) / fname, dest / fname) + +def write_changelog(version2, version1=None, searchdir=None, flavor="", architecture=64, basedir=None): + """Write changelog between version1 and version2 of WinPython.""" + searchdir = Path(searchdir) if searchdir else CHANGELOGS_DIR + if basedir: + copy_changelogs(version2, searchdir, flavor, architecture, basedir) + changelog = compare_package_indexes(version2, version1, searchdir, flavor, architecture=architecture) + output_file = searchdir / f"WinPython{flavor}-{architecture}bit-{version2}_History.md" + with open(output_file, "w", encoding="utf-8") as f: + f.write(changelog) + if basedir: + shutil.copyfile(output_file, Path(basedir) / output_file.name) + +def print_usage(): + print("Usage:") + print(" python diff.py file1.md file2.md") + print(" - Compare all sections of two markdown files.") + print(" python diff.py file1.md file2.md --section header1 header2") + print(" - Compare section 'header1' of file1 with section 'header2' of file2.") + print(" python diff.py file1.md file2.md --pairs header1a header2a [header1b header2b ...]") + print(" - Compare pairs of sections. Example: python diff.py f1.md f2.md --pairs python wheelhouse tools tools") + print(" python diff.py [searchdir] [flavor] [architecture]") + print(" - Compare WinPython markdown changelogs by version (historical mode).") + print(" python diff.py --write-changelog [searchdir] [flavor] [architecture] [basedir]") + print(" - Write changelog between version1 and version2 to file (and optionally copy to basedir).") + +if __name__ == "__main__": + args = sys.argv + if len(args) >= 3 and all(arg.lower().endswith('.md') for arg in args[1:3]): + file1, file2 = args[1], args[2] + if len(args) == 3: + print(compare_files(file1, file2)) + elif args[3] == "--section" and len(args) >= 6: + h1, h2 = args[4], args[5] + print(compare_files(file1, file2, mode="section", header1=h1, header2=h2)) + elif args[3] == "--pairs" and len(args) > 4 and len(args[4:]) % 2 == 0: + pairs = list(zip(args[4::2], args[5::2])) + print(compare_files(file1, file2, mode="pairs", header_pairs=pairs)) + else: + print_usage() + elif len(args) >= 2 and args[1] == "--write-changelog": + # Usage: --write-changelog [searchdir] [flavor] [architecture] [basedir] + if len(args) < 4: + print_usage() + sys.exit(1) + version2 = args[2] + version1 = args[3] + searchdir = args[4] if len(args) > 4 else CHANGELOGS_DIR + flavor = args[5] if len(args) > 5 else "" + architecture = int(args[6]) if len(args) > 6 else 64 + basedir = args[7] if len(args) > 7 else None + write_changelog(version2, version1, searchdir, flavor, architecture, basedir) + print(f"Changelog written for {version2} vs {version1}.") + elif len(args) >= 3: + version2 = args[1] + version1 = args[2] if len(args) > 2 and not args[2].endswith('.md') else None + searchdir = args[3] if len(args) > 3 else CHANGELOGS_DIR + flavor = args[4] if len(args) > 4 else "" + architecture = int(args[5]) if len(args) > 5 else 64 + print(compare_package_indexes(version2, version1, searchdir, flavor, architecture=architecture)) + else: + print_usage() \ No newline at end of file diff --git a/wppm/hash.py b/wppm/hash.py new file mode 100644 index 00000000..e0bdd46a --- /dev/null +++ b/wppm/hash.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- +""" +hash.py: compute hash of given files into a markdown output +""" +# Copyright © 2014-2025+ The Winpython development team https://github.com/winpython/ +# Licensed under the terms of the MIT License +# (see winpython/__init__.py for details) + +from pathlib import Path +import sys +import hashlib + +def compute_hash(file_path, hash_function, digest_size=None): + """Compute the hash of a file using the specified hash function.""" + try: + with open(file_path, 'rb') as file: + if digest_size: + return hash_function(file.read(), digest_size=digest_size).hexdigest() + return hash_function(file.read()).hexdigest() + except IOError as e: + print(f"Error reading file {file_path}: {e}") + return None + +def print_hashes(files): + """Print the hashes of the given files.""" + header = f"{'MD5':<32} | {'SHA-1':<40} | {'SHA-256':<64} | {'Binary':<33} | {'Size':<20} | {'blake2b-256':<64}" + line = "|".join(["-" * len(part) for part in header.split("|")]) + + print(header) + print(line) + + for file in sorted(files): + md5 = compute_hash(file, hashlib.md5) + sha1 = compute_hash(file, hashlib.sha1) + sha256 = compute_hash(file, hashlib.sha256) + name = Path(file).name.ljust(33) + size = f"{Path(file).stat().st_size:,} Bytes".replace(",", " ").rjust(20) + blake2b = compute_hash(file, hashlib.blake2b, digest_size=32) + print(f"{md5} | {sha1} | {sha256} | {name} | {size} | {blake2b}") + +if __name__ == '__main__': + if len(sys.argv) < 2: + print("Usage: hash.py files_to_compute_hash") + sys.exit(1) + files = [file for file in sys.argv[1:] if file[-3:].lower() != ".py"] + print_hashes(files) diff --git a/wppm/packagemetadata.py b/wppm/packagemetadata.py new file mode 100644 index 00000000..c82efd91 --- /dev/null +++ b/wppm/packagemetadata.py @@ -0,0 +1,92 @@ +# -*- coding: utf-8 -*- +""" +packagemetadata.py - get metadata from designated place +""" +import os +import re +import tarfile +import zipfile +import sys +from pathlib import Path +from typing import Dict, List, Optional, Tuple +from . import utils +import importlib.metadata +import email +#from packaging.utils import canonicalize_name +# --- Abstract metadata accessor --- + +class PackageMetadata: + """A minimal abstraction for package metadata.""" + def __init__(self, name, version, requires, summary, description, metadata): + self.name = name + self.version = version + self.requires = requires # List[str] of dependencies + self.summary = summary + self.description = description + self.metadata = metadata + +def get_installed_metadata(path = None) -> List[PackageMetadata]: + # Use importlib.metadata or pkg_resources + pkgs = [] + distro = importlib.metadata.distributions(path = path) if path else importlib.metadata.distributions() + for dist in distro: + name = utils.canonicalize_name(dist.metadata['Name']) + version = dist.version + summary = dist.metadata.get("Summary", ""), + description = dist.metadata.get("Description", ""), + requires = dist.requires or [] + metadata = dist.metadata + pkgs.append(PackageMetadata(name, version, requires, summary, description, metadata)) + return pkgs + +def get_directory_metadata(directory: str) -> List[PackageMetadata]: + # For each .whl/.tar.gz file in directory, extract metadata + pkgs = [] + for fname in os.listdir(directory): + if fname.endswith('.whl'): + # Extract METADATA from wheel + meta = extract_metadata_from_wheel(os.path.join(directory, fname)) + pkgs.append(meta) + elif fname.endswith('.tar.gz'): + # Extract PKG-INFO from sdist + meta = extract_metadata_from_sdist(os.path.join(directory, fname)) + pkgs.append(meta) + return pkgs + +def extract_metadata_from_wheel(path: str) -> PackageMetadata: + with zipfile.ZipFile(path) as zf: + for name in zf.namelist(): + if name.endswith(r'.dist-info/METADATA') and name.split("/")[1] == "METADATA": + with zf.open(name) as f: + # Parse metadata (simple parsing for Name, Version, Requires-Dist) + return parse_metadata_file(f.read().decode()) + raise ValueError(f"No METADATA found in {path}") + +def extract_metadata_from_sdist(path: str) -> PackageMetadata: + with tarfile.open(path, "r:gz") as tf: + for member in tf.getmembers(): + if member.name.endswith('PKG-INFO'): + f = tf.extractfile(member) + return parse_metadata_file(f.read().decode()) + raise ValueError(f"No PKG-INFO found in {path}") + +def parse_metadata_file(txt: str) -> PackageMetadata: + meta = email.message_from_string(txt) + name = utils.canonicalize_name(meta.get('Name', '')) + version = meta.get('Version', '') + summary = meta.get('Summary', '') + description = meta.get('Description', '') + requires = meta.get_all('Requires-Dist') or [] + return PackageMetadata(name, version, requires, summary, description, dict(meta.items())) + +def main(): + if len(sys.argv) > 1: + # Directory mode + directory = sys.argv[1] + pkgs = get_directory_metadata(directory) + else: + # Installed packages mode + pkgs = get_installed_metadata() + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/wppm/piptree.py b/wppm/piptree.py new file mode 100644 index 00000000..d6569b4d --- /dev/null +++ b/wppm/piptree.py @@ -0,0 +1,290 @@ +# -*- coding: utf-8 -*- +""" +piptree.py: inspect and display Python package dependencies, +supporting both downward and upward dependency trees. +Requires Python 3.8+ due to importlib.metadata. +""" + +import json +import sys +import re +import platform +import os +import logging +from functools import lru_cache +from collections import OrderedDict +from typing import Dict, List, Optional, Tuple, Union +from pip._vendor.packaging.markers import Marker +from importlib.metadata import Distribution, distributions +from pathlib import Path +from . import utils +from . import packagemetadata as pm + +logging.basicConfig(level=logging.INFO) +logger = logging.getLogger(__name__) + +class PipDataError(Exception): + """Custom exception for PipData related errors.""" + pass + +class PipData: + """Manages package metadata and dependency relationships in a Python environment.""" + + def __init__(self, target: Optional[str] = None, wheelhouse = None): + """ + Initialize the PipData instance. + + :param target: Optional target path to search for packages + """ + self.distro: Dict[str, Dict] = {} + self.raw: Dict[str, Dict] = {} + self.environment = self._get_environment() + try: + packages = self._get_packages(target or sys.executable, wheelhouse) + self._process_packages(packages) + self._populate_reverse_dependencies() + except Exception as e: + raise PipDataError(f"Failed to initialize package data: {str(e)}") from e + + @staticmethod + @lru_cache(maxsize=None) + def normalize(name: str) -> str: + """Normalize package name per PEP 503.""" + return re.sub(r"[-_.]+", "-", name).lower() + + def _get_environment(self) -> Dict[str, str]: + """Collect system and Python environment details.""" + return { + "implementation_name": sys.implementation.name, + "implementation_version": f"{sys.implementation.version.major}.{sys.implementation.version.minor}.{sys.implementation.version.micro}", + "os_name": os.name, + "platform_machine": platform.machine(), + "platform_release": platform.release(), + "platform_system": platform.system(), + "platform_version": platform.version(), + "python_full_version": platform.python_version(), + "platform_python_implementation": platform.python_implementation(), + "python_version": ".".join(platform.python_version_tuple()[:2]), + "sys_platform": sys.platform, + } + + def _get_packages(self, search_path: str, wheelhouse) -> List[Distribution]: + """Retrieve installed packages from the specified path.""" + if wheelhouse: + return pm.get_directory_metadata(wheelhouse) + if sys.executable == search_path: + return pm.get_installed_metadata() #Distribution.discover() + else: + return pm.get_installed_metadata(path=[str(Path(search_path).parent / 'lib' / 'site-packages')]) #distributions(path=[str(Path(search_path).parent / 'lib' / 'site-packages')]) + + def _process_packages(self, packages: List[Distribution]) -> None: + """Process packages metadata and store them in the distro dictionary.""" + for package in packages: + try: + meta = package.metadata + name = meta.get('Name') + if not name: + continue + key = self.normalize(name) + self.raw[key] = meta + self.distro[key] = { + "name": name, + "version": package.version, + "summary": meta.get("Summary", ""), + "requires_dist": self._get_requires(package), + "reverse_dependencies": [], + "description": meta.get("Description", ""), + "provides": self._get_provides(package), + "provided": {'': None} # Placeholder for extras provided by this package + } + except Exception as e: + logger.warning(f"Failed to process package {name}: {str(e)}", exc_info=True) + + def _get_requires(self, package: Distribution) -> List[Dict[str, str]]: + """Extract and normalize requirements for a package.""" + requires = [] + replacements = str.maketrans({" ": " ", "[": "", "]": "", "'": "", '"': ""}) + further_replacements = [ + (' == ', '=='), ('= ', '='), (' !=', '!='), (' ~=', '~='), + (' <', '<'), ('< ', '<'), (' >', '>'), ('> ', '>'), + ('; ', ';'), (' ;', ';'), ('( ', '('), + (' and (', ' andZZZZZ('), (' (', '('), (' andZZZZZ(', ' and (') + ] + + if package.requires: + for req in package.requires: + req_nameextra, req_marker = (req + ";").split(";")[:2] + req_nameextra = self.normalize(re.split(r" |;|==|!|>|<|~=", req_nameextra + ";")[0]) + req_key = self.normalize((req_nameextra + "[").split("[")[0]) + req_key_extra = req_nameextra[len(req_key) + 1:].split("]")[0] + req_version = req[len(req_nameextra):].translate(replacements) + + for old, new in further_replacements: + req_version = req_version.replace(old, new) + + req_add = { + "req_key": req_key, + "req_version": req_version, + "req_extra": req_key_extra, + } + if req_marker != "": + req_add["req_marker"] = req_marker + requires.append(req_add) + return requires + + def _get_provides(self, package: Distribution) -> Dict[str, None]: + """Extract provided extras from package requirements.""" + provides = {'': None} + if package.requires: + for req in package.requires: + req_marker = (req + ";").split(";")[1] + if 'extra == ' in req_marker: + remove_list = {ord("'"): None, ord('"'): None} + provides[req_marker.split('extra == ')[1].translate(remove_list)] = None + return provides + + def _populate_reverse_dependencies(self) -> None: + """Populate reverse dependencies.""" + for pkg_key, pkg_data in self.distro.items(): + for req in pkg_data["requires_dist"]: + target_key = req["req_key"] + if target_key in self.distro: + rev_dep = {"req_key": pkg_key, "req_version": req["req_version"], "req_extra": req["req_extra"]} + if "req_marker" in req: + rev_dep["req_marker"] = req["req_marker"] + if 'extra == ' in req["req_marker"]: + remove_list = {ord("'"): None, ord('"'): None} + self.distro[target_key]["provided"][req["req_marker"].split('extra == ')[1].translate(remove_list)] = None + self.distro[target_key]["reverse_dependencies"].append(rev_dep) + + def _get_dependency_tree(self, package_name: str, extra: str = "", version_req: str = "", depth: int = 20, path: Optional[List[str]] = None, verbose: bool = False, upward: bool = False) -> List[List[str]]: + """Recursive function to build dependency tree.""" + path = path or [] + extras = extra.split(",") + pkg_key = self.normalize(package_name) + ret_all = [] + + full_name = f"{package_name}[{extra}]" if extra else package_name + if full_name in path: + logger.warning(f"Cycle detected: {' -> '.join(path + [full_name])}") + return [] + + pkg_data = self.distro[pkg_key] + if pkg_data and len(path) <= depth: + for extra in extras: + environment = {"extra": extra, **self.environment} + summary = f' {pkg_data["summary"]}' if verbose else '' + base_name = f'{package_name}[{extra}]' if extra else package_name + ret = [f'{base_name}=={pkg_data["version"]} {version_req}{summary}'] + + dependencies = pkg_data["requires_dist"] if not upward else pkg_data["reverse_dependencies"] + + for dependency in dependencies: + if dependency["req_key"] in self.distro: + next_path = path + [base_name] + if upward: + up_req = (dependency.get("req_marker", "").split('extra == ')+[""])[1].strip("'\"") + if dependency["req_key"] in self.distro and dependency["req_key"]+"["+up_req+"]" not in path: + # upward dependancy taken if: + # - if extra "" demanded, and no marker from upward package: like pandas[] ==> numpy + # - or the extra is in the upward package, like pandas[test] ==> pytest, for 'test' extra + # - or an extra "array" is demanded, and indeed in the req_extra list: array,dataframe,diagnostics,distributer + if (not dependency.get("req_marker") and extra == "") or \ + ("req_marker" in dependency and extra == up_req and \ + dependency["req_key"] != pkg_key and \ + Marker(dependency["req_marker"]).evaluate(environment=environment)) or \ + ("req_marker" in dependency and extra != "" and \ + extra + ',' in dependency["req_extra"] + ',' and \ + Marker(dependency["req_marker"]).evaluate(environment=environment | {"extra": up_req})): + # IA risk error: # dask[array] go upwards as dask[dataframe], so {"extra": up_req} , not {"extra": extra} + #tag downward limiting dependancies + wall = " " if dependency["req_version"][:1] == "~" or dependency["req_version"].startswith("==") or "<" in dependency["req_version"] else "" + ret += self._get_dependency_tree( + dependency["req_key"], + up_req, + f"[requires{wall}: {package_name}" + + (f"[{dependency['req_extra']}]" if dependency["req_extra"] != "" else "") + + f'{dependency["req_version"]}]', + depth, + next_path, + verbose=verbose, + upward=upward, + ) + elif not dependency.get("req_marker") or Marker(dependency["req_marker"]).evaluate(environment=environment): + ret += self._get_dependency_tree( + dependency["req_key"], + dependency["req_extra"], + dependency["req_version"], + depth, + next_path, + verbose=verbose, + upward=upward, + ) + + ret_all.append(ret) + return ret_all + + def down(self, pp: str = "", extra: str = "", depth: int = 20, indent: int = 5, version_req: str = "", verbose: bool = False) -> str: + """Generate downward dependency tree as formatted string.""" + if pp == ".": + results = [self.down(p, extra, depth, indent, version_req, verbose=verbose) for p in sorted(self.distro)] + return '\n'.join(filter(None, results)) + + if extra == ".": + if pp in self.distro: + results = [self.down(pp, one_extra, depth, indent, version_req, verbose=verbose) + for one_extra in sorted(self.distro[pp]["provides"])] + return '\n'.join(filter(None, results)) + return "" + + if pp not in self.distro: + return "" + + rawtext = json.dumps(self._get_dependency_tree(pp, extra, version_req, depth, verbose=verbose), indent=indent) + lines = [l for l in rawtext.split("\n") if len(l.strip()) > 2] + return "\n".join(lines).replace('"', "") + + def up(self, ppw: str, extra: str = "", depth: int = 20, indent: int = 5, version_req: str = "", verbose: bool = False) -> str: + """Generate upward dependency tree as formatted string.""" + pp = ppw[:-1] if ppw.endswith('!') else ppw + ppend = "!" if ppw.endswith('!') else "" #show only downward limiting dependancies + if pp == ".": + results = [aa for p in sorted(self.distro) if '[requires' in (aa:=self.up(p + ppend, extra, depth, indent, version_req, verbose))] + return '\n'.join(filter(None, results)) + + if extra == ".": + if pp in self.distro: + extras = set(self.distro[pp]["provided"]).union(set(self.distro[pp]["provides"])) + results = [self.up(pp + ppend, e, depth, indent, version_req, verbose=verbose) for e in sorted(extras)] + return '\n'.join(filter(None, results)) + return "" + + if pp not in self.distro: + return "" + + rawtext = json.dumps(self._get_dependency_tree(pp, extra, version_req, depth, verbose=verbose, upward=True), indent=indent) + lines = [l for l in rawtext.split("\n") if len(l.strip()) > 2 and ( ppend=="" or not "[requires:" in l)] + return "\n".join(filter(None, lines)).replace('"', "").replace('[requires :', '[requires:') + + def description(self, pp: str) -> None: + """Return package description or None if not found.""" + if pp in self.distro: + return print("\n".join(self.distro[pp]["description"].split(r"\n"))) + + def summary(self, pp: str) -> str: + """Return package summary or empty string if not found.""" + if pp in self.distro: + return self.distro[pp]["summary"] + return "" + + def pip_list(self, full: bool = False, max_length: int = 144) -> List[Tuple[str, Union[str, Tuple[str, str]]]]: + """List installed packages with optional details. + + :param full: Whether to include the package version and summary + :param max_length: The maximum length for the summary + :return: List of tuples containing package information + """ + pkgs = sorted(self.distro.items()) + if full: + return [(p, d["version"], utils.sum_up(d["summary"], max_length)) for p, d in pkgs] + return [(p, d["version"]) for p, d in pkgs] diff --git a/wppm/utils.py b/wppm/utils.py new file mode 100644 index 00000000..16287244 --- /dev/null +++ b/wppm/utils.py @@ -0,0 +1,355 @@ +# -*- coding: utf-8 -*- +# +# WinPython utilities +# Copyright © 2012 Pierre Raybaut +# Copyright © 2014-2025+ The Winpython development team https://github.com/winpython/ +# Licensed under the terms of the MIT License +# (see winpython/__init__.py for details) + +import os +import sys +import stat +import shutil +import locale +import subprocess +from pathlib import Path +import re +import tarfile +import zipfile + +# SOURCE_PATTERN defines what an acceptable source package name is +SOURCE_PATTERN = r'([a-zA-Z0-9\-\_\.]*)-([0-9\.\_]*[a-z]*[\-]?[0-9]*)(\.zip|\.tar\.gz|\-(py[2-7]*|py[2-7]*\.py[2-7]*)\-none\-any\.whl)' + +# WHEELBIN_PATTERN defines what an acceptable binary wheel package is +WHEELBIN_PATTERN = r'([a-zA-Z0-9\-\_\.]*)-([0-9\.\_]*[a-z0-9\+]*[0-9]?)-cp([0-9]*)\-[0-9|c|o|n|e|p|m]*\-(win32|win\_amd64)\.whl' + +def get_python_executable(path=None): + """Return the path to the Python executable.""" + python_path = Path(path) if path else Path(sys.executable) + base_dir = python_path if python_path.is_dir() else python_path.parent + python_exe = base_dir / 'python.exe' + pypy_exe = base_dir / 'pypy3.exe' # For PyPy + return str(python_exe if python_exe.is_file() else pypy_exe) + +def get_site_packages_path(path=None): + """Return the path to the Python site-packages directory.""" + python_path = Path(path) if path else Path(sys.executable) + base_dir = python_path if python_path.is_dir() else python_path.parent + site_packages = base_dir / 'Lib' / 'site-packages' + pypy_site_packages = base_dir / 'site-packages' # For PyPy + return str(pypy_site_packages if pypy_site_packages.is_dir() else site_packages) + +def get_installed_tools(path=None)-> str: + """Generates Markdown for installed tools section in package index.""" + tool_lines = [] + python_exe = Path(get_python_executable(path)) + version = exec_shell_cmd(f'powershell (Get-Item {python_exe}).VersionInfo.FileVersion', python_exe.parent).splitlines()[0] + tool_lines.append(("Python" ,f"http://www.python.org/", version, "Python programming language with standard library")) + if (node_exe := python_exe.parent.parent / "n" / "node.exe").exists(): + version = exec_shell_cmd(f'powershell (Get-Item {node_exe}).VersionInfo.FileVersion', node_exe.parent).splitlines()[0] + tool_lines.append(("Nodejs", "https://nodejs.org", version, "a JavaScript runtime built on Chrome's V8 JavaScript engine")) + + if (pandoc_exe := python_exe.parent.parent / "t" / "pandoc.exe").exists(): + version = exec_shell_cmd("pandoc -v", pandoc_exe.parent).splitlines()[0].split(" ")[-1] + tool_lines.append(("Pandoc", "https://pandoc.org", version, "an universal document converter")) + + if (vscode_exe := python_exe.parent.parent / "t" / "VSCode" / "Code.exe").exists(): + version = exec_shell_cmd(f'powershell (Get-Item {vscode_exe}).VersionInfo.FileVersion', vscode_exe.parent).splitlines()[0] + tool_lines.append(("VSCode","https://code.visualstudio.com", version, "a source-code editor developed by Microsoft")) + return tool_lines + +def onerror(function, path, excinfo): + """Error handler for `shutil.rmtree`.""" + if not os.access(path, os.W_OK): + os.chmod(path, stat.S_IWUSR) + function(path) + else: + raise + +def sum_up(text: str, max_length: int = 144, stop_at: str = ". ") -> str: + """Summarize text to fit within max_length, ending at last complete sentence.""" + summary = (text + os.linesep).splitlines()[0].strip() + if len(summary) <= max_length: + return summary + if stop_at and stop_at in summary[:max_length]: + return summary[:summary.rfind(stop_at, 0, max_length)] + stop_at.strip() + return summary[:max_length].strip() + +def print_box(text): + """Print text in a box""" + line0 = "+" + ("-" * (len(text) + 2)) + "+" + line1 = "| " + text + " |" + print("\n\n" + "\n".join([line0, line1, line0]) + "\n") + +def is_python_distribution(path): + """Return True if path is a Python distribution.""" + has_exec = Path(get_python_executable(path)).is_file() + has_site = Path(get_site_packages_path(path)).is_dir() + return has_exec and has_site + +def decode_fs_string(string): + """Convert string from file system charset to unicode.""" + charset = sys.getfilesystemencoding() or locale.getpreferredencoding() + return string.decode(charset) + +def exec_shell_cmd(args, path): + """Execute shell command (*args* is a list of arguments) in *path*.""" + process = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=path, shell=True) + return decode_fs_string(process.stdout.read()) + +def exec_run_cmd(args, path=None): + """Run a single command (*args* is a list of arguments) in optional *path*.""" + process = subprocess.run(args, capture_output=True, cwd=path, text=True) + return process.stdout + +def python_query(cmd, path): + """Execute Python command using the Python interpreter located in *path*.""" + the_exe = get_python_executable(path) + return exec_shell_cmd(f'"{the_exe}" -c "{cmd}"', path).splitlines()[0] + +def python_execmodule(cmd, path): + """Execute Python command using the Python interpreter located in *path*.""" + the_exe = get_python_executable(path) + exec_shell_cmd(f'{the_exe} -m {cmd}', path) + +def get_python_infos(path): + """Return (version, architecture) for the Python distribution located in *path*.""" + is_64 = python_query("import sys; print(sys.maxsize > 2**32)", path) + arch = {"True": 64, "False": 32}.get(is_64, None) + ver = python_query("import sys;print(f'{sys.version_info.major}.{sys.version_info.minor}')", path) + return ver, arch + +def get_python_long_version(path): + """Return long version (X.Y.Z) for the Python distribution located in *path*.""" + ver = python_query("import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}')", path) + return ver if re.match(r"([0-9]*)\.([0-9]*)\.([0-9]*)", ver) else None + +def patch_shebang_line(fname, pad=b" ", to_movable=True, targetdir=""): + """Remove absolute path to python.exe in shebang lines in binary files, or re-add it.""" + target_dir = targetdir if to_movable else os.path.abspath(os.path.join(os.path.dirname(fname), r"..")) + "\\" + executable = sys.executable + shebang_line = re.compile(rb"""(#!.*pythonw?\.exe)"?""") # Python3+ + if "pypy3" in sys.executable: + shebang_line = re.compile(rb"""(#!.*pypy3w?\.exe)"?""") # Pypy3+ + target_dir = target_dir.encode("utf-8") + + with open(fname, "rb") as fh: + initial_content = fh.read() + content = shebang_line.split(initial_content, maxsplit=1) + if len(content) != 3: + return + exe = os.path.basename(content[1][2:]) + content[1] = b"#!" + target_dir + exe # + (pad * (len(content[1]) - len(exe) - 2)) + final_content = b"".join(content) + if initial_content == final_content: + return + try: + with open(fname, "wb") as fo: + fo.write(final_content) + print("patched", fname) + except Exception: + print("failed to patch", fname) + +def patch_shebang_line_py(fname, to_movable=True, targetdir=""): + """Changes shebang line in '.py' file to relative or absolue path""" + import fileinput + exec_path = r'#!.\python.exe' if to_movable else '#!' + sys.executable + if 'pypy3' in sys.executable: + exec_path = r'#!.\pypy3.exe' if to_movable else exec_path + for line in fileinput.input(fname, inplace=True): + if re.match(r'^#\!.*python\.exe$', line) or re.match(r'^#\!.*pypy3\.exe$', line): + print(exec_path) + else: + print(line, end='') + +def guess_encoding(csv_file): + """guess the encoding of the given file""" + with open(csv_file, "rb") as f: + data = f.read(5) + if data.startswith(b"\xEF\xBB\xBF"): # UTF-8 with a "BOM" (normally no BOM in utf-8) + return ["utf-8-sig"] + try: + with open(csv_file, encoding="utf-8") as f: + preview = f.read(222222) + return ["utf-8"] + except: + return [locale.getdefaultlocale()[1], "utf-8"] + +def replace_in_file(filepath: Path, replacements: list[tuple[str, str]], filedest: Path = None, verbose=False): + """ + Replaces strings in a file + Args: + filepath: Path to the file to modify. + replacements: A list of tuples of ('old string 'new string') + filedest: optional output file, otherwise will be filepath + """ + the_encoding = guess_encoding(filepath)[0] + with open(filepath, "r", encoding=the_encoding) as f: + content = f.read() + new_content = content + for old_text, new_text in replacements: + new_content = new_content.replace(old_text, new_text) + outfile = filedest if filedest else filepath + if new_content != content or str(outfile) != str(filepath): + with open(outfile, "w", encoding=the_encoding) as f: + f.write(new_content) + if verbose: + print(f"patched from {Path(filepath).name} into {outfile} !") + +def patch_sourcefile(fname, in_text, out_text, silent_mode=False): + """Replace a string in a source file.""" + if not silent_mode: + print(f"patching {fname} from {in_text} to {out_text}") + if Path(fname).is_file() and in_text != out_text: + replace_in_file(Path(fname), [(in_text, out_text)]) + +def extract_archive(fname, targetdir=None, verbose=False): + """Extract .zip, .exe or .tar.gz archive to a temporary directory. + Return the temporary directory path""" + targetdir = targetdir or create_temp_dir() + Path(targetdir).mkdir(parents=True, exist_ok=True) + if Path(fname).suffix in ('.zip', '.exe'): + obj = zipfile.ZipFile(fname, mode="r") + elif fname.endswith('.tar.gz'): + obj = tarfile.open(fname, mode='r:gz') + else: + raise RuntimeError(f"Unsupported archive filename {fname}") + obj.extractall(path=targetdir) + return targetdir + +def get_source_package_infos(fname): + """Return a tuple (name, version) of the Python source package.""" + if fname.endswith('.whl'): + return Path(fname).name.split("-")[:2] + match = re.match(SOURCE_PATTERN, Path(fname).name) + return match.groups()[:2] if match else None + +def buildflit_wininst(root, python_exe=None, copy_to=None, verbose=False): + """Build Wheel from Python package located in *root* with flit.""" + python_exe = python_exe or sys.executable + cmd = [python_exe, '-m', 'flit', 'build'] + if verbose: + subprocess.call(cmd, cwd=root) + else: + subprocess.Popen(cmd, cwd=root, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate() + distdir = Path(root) / 'dist' + if not distdir.is_dir(): + raise RuntimeError( + "Build failed: see package README file for further details regarding installation requirements.\n\n" + "For more concrete debugging infos, please try to build the package from the command line:\n" + "1. Open a WinPython command prompt\n" + "2. Change working directory to the appropriate folder\n" + "3. Type `python -m flit build`" + ) + for distname in os.listdir(distdir): + if re.match(SOURCE_PATTERN, distname) or re.match(WHEELBIN_PATTERN, distname): + break + else: + raise RuntimeError(f"Build failed: not a pure Python package? {distdir}") + + src_fname = distdir / distname + if copy_to: + dst_fname = Path(copy_to) / distname + shutil.move(src_fname, dst_fname) + if verbose: + print(f"Move: {src_fname} --> {dst_fname}") + +def direct_pip_install(fname, python_exe=None, verbose=False, install_options=None): + """Direct install via python -m pip !""" + python_exe = python_exe or sys.executable + myroot = Path(python_exe).parent + cmd = [python_exe, "-m", "pip", "install"] + (install_options or []) + [fname] + if not verbose: + process = subprocess.Popen(cmd, cwd=myroot, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + stdout, stderr = process.communicate() + the_log = f"{stdout}\n {stderr}" + if " not find " in the_log or " not found " in the_log: + print(f"Failed to Install: \n {fname} \n msg: {the_log}") + raise RuntimeError + process.stdout.close() + process.stderr.close() + else: + subprocess.call(cmd, cwd=myroot) + print(f"Installed {fname} via {' '.join(cmd)}") + return fname + +def do_script(this_script, python_exe=None, copy_to=None, verbose=False, install_options=None): + """Execute a script (get-pip typically).""" + python_exe = python_exe or sys.executable + myroot = Path(python_exe).parent + # cmd = [python_exe, myroot + r'\Scripts\pip-script.py', 'install'] + cmd = [python_exe] + (install_options or []) + ([this_script] if this_script else []) + print("Executing ", cmd) + if not verbose: + subprocess.Popen(cmd, cwd=myroot, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate() + else: + subprocess.call(cmd, cwd=myroot) + print("Executed ", cmd) + return 'ok' + +def columns_width(list_of_lists): + """Return the maximum string length of each column of a list of lists.""" + if not isinstance(list_of_lists, list): + return [0] + return [max(len(str(item)) for item in sublist) for sublist in zip(*list_of_lists)] + +def formatted_list(list_of_list, full=False, max_width=70): + """Format a list_of_list to fixed length columns.""" + columns_size = columns_width(list_of_list) + columns = range(len(columns_size)) + return [list(line[col].ljust(columns_size[col])[:max_width] for col in columns) for line in list_of_list] + +def normalize(this): + """Apply PEP 503 normalization to the string.""" + return re.sub(r"[-_.]+", "-", this).lower() + +def canonicalize_name(this): + """Apply PEP 503 normalization to the string.""" + return re.sub(r"[-_.]+", "-", this).lower() + +def zip_directory(folder_path, output_zip_path): + folder_path = Path(folder_path) + output_zip_path = Path(output_zip_path) + + with zipfile.ZipFile(output_zip_path, 'w', compression=zipfile.ZIP_DEFLATED) as zipf: + for file in folder_path.rglob('*'): + if file.is_file(): + arcname = file.relative_to(folder_path) + zipf.write(file, arcname) + +def find_7zip_executable() -> str: + """Locates the 7-Zip executable (7z.exe).""" + possible_program_files = [r"C:\Program Files", r"C:\Program Files (x86)", Path(sys.prefix).parent / "t"] + for base_dir in possible_program_files: + if (executable_path := Path(base_dir) / "7-Zip" / "7z.exe").is_file(): + return str(executable_path) + raise RuntimeError("7ZIP is not installed on this computer.") + +def create_installer_7zip(origin, destination, filename_stem, installer_type: str = "exe", compression= "mx5"): + """Creates a WinPython installer using 7-Zip: "exe", "7z", "zip")""" + fullfilename = destination / (filename_stem + "." + installer_type) + if installer_type not in ["exe", "7z", "zip"]: + return + sfx_option = "-sfx7z.sfx" if installer_type == "exe" else "" + zip_option = "-tzip" if installer_type == "zip" else "" + compress_level = "mx5" if compression == "" else compression + command = f'"{find_7zip_executable()}" {zip_option} -{compress_level} a "{fullfilename}" "{origin}" {sfx_option}' + print(f'Executing 7-Zip script: "{command}"') + try: + subprocess.run(command, shell=True, check=True, stderr=sys.stderr, stdout=sys.stderr) + except subprocess.CalledProcessError as e: + print(f"Error executing 7-Zip script: {e}", file=sys.stderr) + +def command_installer_7zip(origin, destination, filename_stem, create_installer: str = "exe"): + for commmand in create_installer.lower().replace("7zip",".exe").split('.'): + installer_type, compression = (commmand + "-").split("-")[:2] + create_installer_7zip(Path(origin), Path(destination), filename_stem, installer_type, compression) + +if __name__ == '__main__': + print_box("Test") + dname = sys.prefix + print((dname + ':', '\n', get_python_infos(dname))) + + tmpdir = r'D:\Tests\winpython_tests' + Path(tmpdir).mkdir(parents=True, exist_ok=True) + print(extract_archive(str(Path(r'D:\WinP\bd37') / 'packages.win-amd64' / 'python-3.7.3.amd64.zip'), tmpdir)) diff --git a/wppm/wheelhouse.py b/wppm/wheelhouse.py new file mode 100644 index 00000000..7ed9e54f --- /dev/null +++ b/wppm/wheelhouse.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python3 +""" +WheelHouse.py - manage WinPython local WheelHouse. +""" +import sys +from pathlib import Path +from collections import defaultdict +import shutil +import subprocess +from typing import Dict, List, Optional, Tuple +from . import packagemetadata as pm + +# Use tomllib if available (Python 3.11+), otherwise fall back to tomli +try: + import tomllib # Python 3.11+ +except ImportError: + try: + import tomli as tomllib # For older Python versions + except ImportError: + print("Please install tomli for Python < 3.11: pip install tomli") + sys.exit(1) + +def parse_pylock_toml(path: Path) -> Dict[str, Dict[str, str | List[str]]]: + """Parse a pylock.toml file and extract package information.""" + with open(path, "rb") as f: + data = tomllib.load(f) + + # This dictionary maps package names to (version, [hashes]) + package_hashes = defaultdict(lambda: {"version": "", "hashes": []}) + + for entry in data.get("packages", []): + name = entry["name"] + version = entry["version"] + all_hashes = [] + + # Handle wheels + for wheel in entry.get("wheels", []): + sha256 = wheel.get("hashes", {}).get("sha256") + if sha256: + all_hashes.append(sha256) + + # Handle sdist (if present) + sdist = entry.get("sdist") + if sdist and "hashes" in sdist: + sha256 = sdist["hashes"].get("sha256") + if sha256: + all_hashes.append(sha256) + + package_hashes[name]["version"] = version + package_hashes[name]["hashes"].extend(all_hashes) + + return package_hashes + +def write_requirements_txt(package_hashes: Dict[str, Dict[str, str | List[str]]], output_path: Path) -> None: + """Write package requirements to a requirements.txt file.""" + with open(output_path, "w") as f: + for name, data in sorted(package_hashes.items()): + version = data["version"] + hashes = data["hashes"] + + if hashes: + f.write(f"{name}=={version} \\\n") + for i, h in enumerate(hashes): + end = " \\\n" if i < len(hashes) - 1 else "\n" + f.write(f" --hash=sha256:{h}{end}") + else: + f.write(f"{name}=={version}\n") + + print(f"✅ requirements.txt written to {output_path}") + +def pylock_to_req(path: Path, output_path: Optional[Path] = None) -> None: + """Convert a pylock.toml file to requirements.txt.""" + pkgs = parse_pylock_toml(path) + if not output_path: + output_path = path.parent / (path.stem.replace('pylock', 'requirement_with_hash') + '.txt') + write_requirements_txt(pkgs, output_path) + +def run_pip_command(command: List[str], check: bool = True, capture_output=True) -> Tuple[bool, Optional[str]]: + """Run a pip command and return the result.""" + print('\n', ' '.join(command),'\n') + try: + result = subprocess.run( + command, + capture_output=capture_output, + text=True, + check=check + ) + return (result.returncode == 0), (result.stderr or result.stdout) + except subprocess.CalledProcessError as e: + return False, e.stderr + except FileNotFoundError: + return False, "pip or Python not found." + except Exception as e: + return False, f"Unexpected error: {e}" + +def get_wheels(requirements: Path, wheeldrain: Path, wheelorigin: Optional[Path] = None + , only_check: bool = True,post_install: bool = False) -> bool: + """Download or check Python wheels based on requirements.""" + added = [] + if wheelorigin: + added = ['--no-index', '--trusted-host=None', f'--find-links={wheelorigin}'] + pre_checks = [sys.executable, "-m", "pip", "install", "--dry-run", "--no-deps", "--require-hashes", "-r", str(requirements)] + added + instruction = [sys.executable, "-m", "pip", "download", "--no-deps", "--require-hashes", "-r", str(requirements), "--dest", str(wheeldrain)] + added + if wheeldrain: + added = ['--no-index', '--trusted-host=None', f'--find-links={wheeldrain}'] + post_install_cmd = [sys.executable, "-m", "pip", "install", "--no-deps", "--require-hashes", "-r", str(requirements)] + added + + # Run pip dry-run, only if a move of wheels + if wheelorigin and wheelorigin != wheeldrain: + success, output = run_pip_command(pre_checks, check=False) + if not success: + print("❌ Dry-run failed. Here's the output:\n") + print(output or "") + return False + + print("✅ Requirements can be installed successfully (dry-run passed).\n") + + # All ok + if only_check and not post_install: + return True + + # Want to install + if not only_check and post_install: + success, output = run_pip_command(post_install_cmd, check=False, capture_output=False) + if not success: + print("❌ Installation failed. Here's the output:\n") + print(output or "") + return False + return True + + # Otherwise download also, but not install direct + success, output = run_pip_command(instruction) + if not success: + print("❌ Download failed. Here's the output:\n") + print(output or "") + return False + + return True + +def get_pylock_wheels(wheelhouse: Path, lockfile: Path, wheelorigin: Optional[Path] = None, wheeldrain: Optional[Path] = None) -> None: + """Get wheels asked pylock file.""" + filename = Path(lockfile).name + wheelhouse.mkdir(parents=True, exist_ok=True) + trusted_wheelhouse = wheelhouse / "included.wheels" + trusted_wheelhouse.mkdir(parents=True, exist_ok=True) + + filename_lock = wheelhouse / filename + filename_req = wheelhouse / (Path(lockfile).stem.replace('pylock', 'requirement') + '.txt') + + pylock_to_req(Path(lockfile), filename_req) + + if not str(Path(lockfile)) == str(filename_lock): + shutil.copy2(lockfile, filename_lock) + + # We create a destination for wheels that is specific, so we can check all is there + destination_wheelhouse = Path(wheeldrain) if wheeldrain else wheelhouse / Path(lockfile).name.replace('.toml', '.wheels') + destination_wheelhouse.mkdir(parents=True, exist_ok=True) + # there can be an override + + in_trusted = False + + if wheelorigin is None: + # Try from trusted WheelHouse + print(f"\n\n*** Checking if we can install from our Local WheelHouse: ***\n {trusted_wheelhouse}\n\n") + in_trusted = get_wheels(filename_req, destination_wheelhouse, wheelorigin=trusted_wheelhouse, only_check=True) + if in_trusted: + print(f"\n\n*** We can install from Local WheelHouse: ***\n {trusted_wheelhouse}\n\n") + in_installed = get_wheels(filename_req, trusted_wheelhouse, wheelorigin=trusted_wheelhouse, only_check=False, post_install=True) + + if not in_trusted: + post_install = True if wheelorigin and Path(wheelorigin).is_dir and Path(wheelorigin).samefile(destination_wheelhouse) else False + if post_install: + print(f"\n\n*** Installing from Local WheelHouse: ***\n {destination_wheelhouse}\n\n") + else: + print(f"\n\n*** Re-Checking if we can install from: {'pypi.org' if not wheelorigin or wheelorigin == '' else wheelorigin}\n\n") + + in_pylock = get_wheels(filename_req, destination_wheelhouse, wheelorigin=wheelorigin, only_check=False, post_install=post_install) + if in_pylock: + if not post_install: + print(f"\n\n*** You can now install from this dedicated WheelHouse: ***\n {destination_wheelhouse}") + print(f"\n via:\n wppm {filename_lock} -wh {destination_wheelhouse}\n") + else: + print(f"\n\n*** We can't install {filename} ! ***\n\n") + +def list_packages_with_metadata(directory: str) -> List[Tuple[str, str, str]]: + "get metadata from a Wheelhouse directory" + packages = pm.get_directory_metadata(directory) + results = [ (p.name, p.version, p.summary) for p in packages] + return results + +def main() -> None: + """Main entry point for the script.""" + if len(sys.argv) != 2: + print("Usage: python pylock_to_requirements.py pylock.toml") + sys.exit(1) + + path = Path(sys.argv[1]) + if not path.exists(): + print(f"❌ File not found: {path}") + sys.exit(1) + + pkgs = parse_pylock_toml(path) + dest = path.parent / (path.stem.replace('pylock', 'requirement_with_hash') + '.txt') + write_requirements_txt(pkgs, dest) + +if __name__ == "__main__": + main() diff --git a/wppm/wppm.py b/wppm/wppm.py new file mode 100644 index 00000000..73e93b38 --- /dev/null +++ b/wppm/wppm.py @@ -0,0 +1,404 @@ +# -*- coding: utf-8 -*- +# +# WinPython Package Manager +# Copyright © 2012 Pierre Raybaut +# Copyright © 2014-2025+ The Winpython development team https://github.com/winpython/ +# Licensed under the terms of the MIT License +# (see wppm/__init__.py for details) + +import os +import re +import sys +import shutil +import subprocess +import json +from pathlib import Path +from argparse import ArgumentParser, RawTextHelpFormatter +from . import utils, piptree, associate, diff, __version__ +from . import wheelhouse as wh +from operator import itemgetter +# Workaround for installing PyVISA on Windows from source: +os.environ["HOME"] = os.environ["USERPROFILE"] + +class Package: + """Standardize a Package from filename or pip list.""" + def __init__(self, fname: str, suggested_summary: str = None): + self.fname = fname + self.description = (utils.sum_up(suggested_summary) if suggested_summary else "").strip() + self.name, self.version = fname, '?.?.?' + if fname.lower().endswith((".zip", ".tar.gz", ".whl")): + bname = Path(self.fname).name # e.g., "sqlite_bro-1.0.0..." + infos = utils.get_source_package_infos(bname) # get name, version + if infos: + self.name, self.version = utils.normalize(infos[0]), infos[1] + self.url = f"https://pypi.org/project/{self.name}" + self.files = [] + + def __str__(self): + return f"{self.name} {self.version}\r\n{self.description}\r\nWebsite: {self.url}" + + +class Distribution: + """Handles operations on a WinPython distribution.""" + def __init__(self, target: str = None, verbose: bool = False): + self.target = target or str(Path(sys.executable).parent) # Default target more explicit + self.verbose = verbose + self.pip = None + self.to_be_removed = [] + self.version, self.architecture = utils.get_python_infos(self.target) + self.python_exe = utils.get_python_executable(self.target) + self.short_exe = Path(self.python_exe).name + self.wheelhouse = Path(self.target).parent / "wheelhouse" + + def create_file(self, package, name, dstdir, contents): + """Generate data file -- path is relative to distribution root dir""" + dst = Path(dstdir) / name + if self.verbose: + print(f"create: {dst}") + full_dst = Path(self.target) / dst + with open(full_dst, "w") as fd: + fd.write(contents) + package.files.append(str(dst)) + + def get_installed_packages(self, update: bool = False) -> list[Package]: + """Return installed packages.""" + if str(Path(sys.executable).parent) == self.target: + self.pip = piptree.PipData() + else: + self.pip = piptree.PipData(utils.get_python_executable(self.target)) + pip_list = self.pip.pip_list(full=True) + return [Package(f"{i[0].replace('-', '_').lower()}-{i[1]}-py3-none-any.whl", suggested_summary=i[2]) for i in pip_list] + + def render_markdown_for_list(self, title, items): + """Generates a Markdown section; name, url, version, summary""" + md = f"### {title}\n\n" + md += "Name | Version | Description\n" + md += "-----|---------|------------\n" + for name, url, version, summary in sorted(items, key=lambda p: (p[0].lower(), p[2])): + md += f"[{name}]({url}) | {version} | {summary}\n" + md += "\n" + return md + + def generate_package_index_markdown(self, python_executable_directory: str|None = None, winpyver2: str|None = None, + flavor: str|None = None, architecture_bits: int|None = None + , release_level: str|None = None, wheeldir: str|None = None) -> str: + """Generates a Markdown formatted package index page.""" + my_ver , my_arch = utils.get_python_infos(python_executable_directory or self.target) + my_winpyver2 = winpyver2 or os.getenv("WINPYVER2","") + my_winpyver2 = my_winpyver2 if my_winpyver2 != "" else my_ver + my_flavor = flavor or os.getenv("WINPYFLAVOR", "") + my_release_level = release_level or os.getenv("WINPYVER", "").replace(my_winpyver2+my_flavor, "") + + tools_list = utils.get_installed_tools(utils.get_python_executable(python_executable_directory)) + package_list = [(pkg.name, pkg.url, pkg.version, pkg.description) for pkg in self.get_installed_packages()] + wheelhouse_list = [] + my_wheeldir = Path(wheeldir) if wheeldir else self.wheelhouse / 'included.wheels' + if my_wheeldir.is_dir(): + wheelhouse_list = [(name, f"https://pypi.org/project/{name}", version, utils.sum_up(summary)) + for name, version, summary in wh.list_packages_with_metadata(str(my_wheeldir)) ] + + return f"""## WinPython {my_winpyver2 + my_flavor} + +The following packages are included in WinPython-{my_arch}bit v{my_winpyver2 + my_flavor} {my_release_level}. + + +{self.render_markdown_for_list("Tools", tools_list)} +{self.render_markdown_for_list("Python packages", package_list)} +{self.render_markdown_for_list("WheelHouse packages", wheelhouse_list)} +""" + + def find_package(self, name: str) -> Package | None: + """Find installed package by name.""" + for pack in self.get_installed_packages(): + if utils.normalize(pack.name) == utils.normalize(name): + return pack + + def patch_all_shebang(self, to_movable: bool = True, max_exe_size: int = 999999, targetdir: str = ""): + """Make all python launchers relative.""" + for ffname in Path(self.target).glob("Scripts/*.exe"): + if ffname.stat().st_size <= max_exe_size: + utils.patch_shebang_line(ffname, to_movable=to_movable, targetdir=targetdir) + for ffname in Path(self.target).glob("Scripts/*.py"): + utils.patch_shebang_line_py(ffname, to_movable=to_movable, targetdir=targetdir) + + def install(self, package: Package, install_options: list[str] = None): + """Install package in distribution.""" + if package.fname.endswith((".whl", ".tar.gz", ".zip")) or ( + ' ' not in package.fname and ';' not in package.fname and len(package.fname) >1): # Check extension with tuple + self.install_bdist_direct(package, install_options=install_options) + self.handle_specific_packages(package) + # minimal post-install actions + self.patch_standard_packages(package.name) + + def do_pip_action(self, actions: list[str] = None, install_options: list[str] = None): + """Execute pip action in the distribution.""" + my_list = install_options or [] + my_actions = actions or [] + executing = str(Path(self.target).parent / "scripts" / "env.bat") + if Path(executing).is_file(): + complement = [r"&&", "cd", "/D", self.target, r"&&", utils.get_python_executable(self.target), "-m", "pip"] + else: + executing = utils.get_python_executable(self.target) + complement = ["-m", "pip"] + try: + fname = utils.do_script(this_script=None, python_exe=executing, verbose=self.verbose, install_options=complement + my_actions + my_list) + except RuntimeError as e: + if not self.verbose: + print("Failed!") + raise + else: + print(f"Pip action failed with error: {e}") # Print error if verbose + + def patch_standard_packages(self, package_name="", to_movable=True): + """patch Winpython packages in need""" + import filecmp + + # 'pywin32' minimal post-install (pywin32_postinstall.py do too much) + if package_name.lower() in ("", "pywin32"): + origin = Path(self.target) / "site-packages" / "pywin32_system32" + destin = Path(self.target) + if origin.is_dir(): + for name in os.listdir(origin): + here, there = origin / name, destin / name + if not there.exists() or not filecmp.cmp(here, there): + shutil.copyfile(here, there) + # 'pip' to do movable launchers (around line 100) !!!! + # rational: https://github.com/pypa/pip/issues/2328 + if package_name.lower() == "pip" or package_name == "": + # ensure pip will create movable launchers + # sheb_mov1 = classic way up to WinPython 2016-01 + # sheb_mov2 = tried way, but doesn't work for pip (at least) + the_place = Path(self.target) / "lib" / "site-packages" / "pip" / "_vendor" / "distlib" / "scripts.py" + sheb_fix = " executable = get_executable()" + sheb_mov1 = " executable = os.path.join(os.path.basename(get_executable()))" + sheb_mov2 = " executable = os.path.join('..',os.path.basename(get_executable()))" + if to_movable: + utils.patch_sourcefile(the_place, sheb_fix, sheb_mov1) + utils.patch_sourcefile(the_place, sheb_mov2, sheb_mov1) + else: + utils.patch_sourcefile(the_place, sheb_mov1, sheb_fix) + utils.patch_sourcefile(the_place, sheb_mov2, sheb_fix) + + # create movable launchers for previous package installations + self.patch_all_shebang(to_movable=to_movable) + if package_name.lower() in ("", "spyder"): + # spyder don't goes on internet without you ask + utils.patch_sourcefile( + Path(self.target) / "lib" / "site-packages" / "spyder" / "config" / "main.py", + "'check_updates_on_startup': True,", + "'check_updates_on_startup': False,", + ) + + + def handle_specific_packages(self, package): + """Packages requiring additional configuration""" + if package.name.lower() in ("pyqt4", "pyqt5", "pyside2"): + # Qt configuration file (where to find Qt) + name = "qt.conf" + contents = """[Paths]\nPrefix = .\nBinaries = .""" + self.create_file(package, name, str(Path("Lib") / "site-packages" / package.name), contents) + self.create_file(package, name, ".", contents.replace(".", f"./Lib/site-packages/{package.name}")) + # pyuic script + if package.name.lower() == "pyqt5": + # see http://code.activestate.com/lists/python-list/666469/ + tmp_string = r"""@echo off +if "%WINPYDIR%"=="" call "%~dp0..\..\scripts\env.bat" +"%WINPYDIR%\python.exe" -m PyQt5.uic.pyuic %1 %2 %3 %4 %5 %6 %7 %8 %9""" + else: + tmp_string = r"""@echo off +if "%WINPYDIR%"=="" call "%~dp0..\..\scripts\env.bat" +"%WINPYDIR%\python.exe" "%WINPYDIR%\Lib\site-packages\package.name\uic\pyuic.py" %1 %2 %3 %4 %5 %6 %7 %8 %9""" + # PyPy adaption: python.exe or pypy3.exe + my_exec = Path(utils.get_python_executable(self.target)).name + tmp_string = tmp_string.replace("python.exe", my_exec).replace("package.name", package.name) + self.create_file(package, f"pyuic{package.name[-1]}.bat", "Scripts", tmp_string) + # Adding missing __init__.py files (fixes Issue 8) + uic_path = str(Path("Lib") / "site-packages" / package.name / "uic") + for dirname in ("Loader", "port_v2", "port_v3"): + self.create_file(package, "__init__.py", str(Path(uic_path) / dirname), "") + + def _print(self, package: Package, action: str): + """Print package-related action text.""" + text = f"{action} {package.name} {package.version}" + if self.verbose: + utils.print_box(text) + else: + print(f" {text}...", end=" ") + + def _print_done(self): + """Print OK at the end of a process""" + if not self.verbose: + print("OK") + + def uninstall(self, package): + """Uninstall package from distribution""" + self._print(package, "Uninstalling") + if package.name != "pip": + # trick to get true target (if not current) + this_exec = utils.get_python_executable(self.target) # PyPy ! + subprocess.call([this_exec, "-m", "pip", "uninstall", package.name, "-y"], cwd=self.target) + self._print_done() + + def install_bdist_direct(self, package, install_options=None): + """Install a package directly !""" + self._print(package,f"Installing {package.fname.split('.')[-1]}") + try: + fname = utils.direct_pip_install( + package.fname, + python_exe=utils.get_python_executable(self.target), # PyPy ! + verbose=self.verbose, + install_options=install_options, + ) + except RuntimeError: + if not self.verbose: + print("Failed!") + raise + package = Package(fname) + self._print_done() + +def main(test=False): + + registerWinPythonHelp = f"Register WinPython: associate file extensions, icons and context menu with this WinPython" + unregisterWinPythonHelp = f"Unregister WinPython: de-associate file extensions, icons and context menu from this WinPython" + parser = ArgumentParser(prog="wppm", + description=f"WinPython Package Manager: handle a WinPython Distribution and its packages ({__version__})", + formatter_class=RawTextHelpFormatter, + ) + parser.add_argument("fname", metavar="package(s) or lockfile", nargs="*", default=[""], type=str, help="optional package names, wheels, or lockfile") + parser.add_argument("-v", "--verbose", action="store_true", help="show more details on packages and actions") + parser.add_argument( "--register", dest="registerWinPython", action="store_true", help=registerWinPythonHelp) + parser.add_argument("--unregister", dest="unregisterWinPython", action="store_true", help=unregisterWinPythonHelp) + parser.add_argument("--fix", action="store_true", help="make WinPython fix") + parser.add_argument("--movable", action="store_true", help="make WinPython movable") + parser.add_argument("-ws", dest="wheelsource", default=None, type=str, help="wheels location, '.' = WheelHouse): wppm pylock.toml -ws source_of_wheels, wppm -ls -ws .") + parser.add_argument("-wd", dest="wheeldrain" , default=None, type=str, help="wheels destination: wppm pylock.toml -wd destination_of_wheels") + parser.add_argument("-ls", "--list", action="store_true", help="list installed packages matching [optional] expression: wppm -ls, wppm -ls pand") + parser.add_argument("-lsa", dest="all", action="store_true",help=f"list details of packages matching [optional] expression: wppm -lsa pandas -l1") + parser.add_argument("-md", dest="markdown", action="store_true",help=f"markdown summary of the installation") + parser.add_argument("-p",dest="pipdown",action="store_true",help="show Package dependencies of the given package[option], [.]=all: wppm -p pandas[.]") + parser.add_argument("-r", dest="pipup", action="store_true", help=f"show Reverse (!= constraining) dependancies of the given package[option]: wppm -r pytest![test]") + parser.add_argument("-l", dest="levels", type=int, default=-1, help="show 'LEVELS' levels of dependencies (with -p, -r): wppm -p pandas -l1") + parser.add_argument("-t", dest="target", default=sys.prefix, help=f'path to target Python distribution (default: "{sys.prefix}")') + parser.add_argument("-i", "--install", action="store_true", help="install a given package wheel or pylock file (use pip for more features)") + parser.add_argument("-u", "--uninstall", action="store_true", help="uninstall package (use pip for more features)") + + args = parser.parse_args() + targetpython = None + if args.target and args.target != sys.prefix: + targetpython = args.target if args.target.lower().endswith('.exe') else str(Path(args.target) / 'python.exe') + if args.wheelsource == ".": # play in default WheelHouse + if utils.is_python_distribution(args.target): + dist = Distribution(args.target) + args.wheelsource = dist.wheelhouse / 'included.wheels' + if args.install and args.uninstall: + raise RuntimeError("Incompatible arguments: --install and --uninstall") + if args.registerWinPython and args.unregisterWinPython: + raise RuntimeError("Incompatible arguments: --install and --uninstall") + if args.pipdown: + pip = piptree.PipData(targetpython, args.wheelsource) + for args_fname in args.fname: + pack, extra, *other = (args_fname + "[").replace("]", "[").split("[") + print(pip.down(pack, extra, args.levels if args.levels>0 else 2, verbose=args.verbose)) + sys.exit() + elif args.pipup: + pip = piptree.PipData(targetpython, args.wheelsource) + for args_fname in args.fname: + pack, extra, *other = (args_fname + "[").replace("]", "[").split("[") + print(pip.up(pack, extra, args.levels if args.levels>=0 else 1, verbose=args.verbose)) + sys.exit() + elif args.list: + pip = piptree.PipData(targetpython, args.wheelsource) + todo= [] + for args_fname in args.fname: + todo += [l for l in pip.pip_list(full=True) if bool(re.search(args_fname, l[0]))] + todo = sorted(set(todo)) #, key=lambda p: (p[0].lower(), p[2]) + titles = [['Package', 'Version', 'Summary'], ['_' * max(x, 6) for x in utils.columns_width(todo)]] + listed = utils.formatted_list(titles + todo, max_width=70) + for p in listed: + print(*p) + sys.exit() + elif args.all: + pip = piptree.PipData(targetpython, args.wheelsource) + for args_fname in args.fname: + todo = [l for l in pip.pip_list(full=True) if bool(re.search(args_fname, l[0]))] + for l in sorted(set(todo)): + title = f"** Package: {l[0]} **" + print("\n" + "*" * len(title), f"\n{title}", "\n" + "*" * len(title)) + for key, value in pip.raw[l[0]].items(): + rawtext = json.dumps(value, indent=2, ensure_ascii=False) + lines = [l for l in rawtext.split(r"\n") if len(l.strip()) > 2] + if key.lower() != 'description' or args.verbose: + print(f"{key}: ", "\n".join(lines).replace('"', "")) + sys.exit() + if args.registerWinPython: + print(registerWinPythonHelp) + if utils.is_python_distribution(args.target): + dist = Distribution(args.target) + else: + raise OSError(f"Invalid Python distribution {args.target}") + print(f"registering {args.target}") + print("continue ? Y/N") + theAnswer = input() + if theAnswer == "Y": + associate.register(dist.target, verbose=args.verbose) + sys.exit() + if args.unregisterWinPython: + print(unregisterWinPythonHelp) + if utils.is_python_distribution(args.target): + dist = Distribution(args.target) + else: + raise OSError(f"Invalid Python distribution {args.target}") + print(f"unregistering {args.target}") + print("continue ? Y/N") + theAnswer = input() + if theAnswer == "Y": + associate.unregister(dist.target, verbose=args.verbose) + sys.exit() + if utils.is_python_distribution(args.target): + dist = Distribution(args.target, verbose=True) + cmd_fix = rf"from wppm import wppm;dist=wppm.Distribution(r'{dist.target}');dist.patch_standard_packages('pip', to_movable=False)" + cmd_mov = rf"from wppm import wppm;dist=wppm.Distribution(r'{dist.target}');dist.patch_standard_packages('pip', to_movable=True)" + if args.fix: + # dist.patch_standard_packages('pip', to_movable=False) # would fail on wppm.exe + p = subprocess.Popen(["start", "cmd", "/k",dist.python_exe, "-c" , cmd_fix], shell = True, cwd=dist.target) + sys.exit() + if args.movable: + p = subprocess.Popen(["start", "cmd", "/k",dist.python_exe, "-c" , cmd_mov], shell = True, cwd=dist.target) + sys.exit() + if args.markdown: + default = dist.generate_package_index_markdown() + if args.wheelsource: + compare = dist.generate_package_index_markdown(wheeldir = args.wheelsource) + print(diff.compare_markdown_sections(default, compare,'python', 'wheelhouse', 'installed', 'wheelhouse')) + else: + print(default) + sys.exit() + if not args.install and not args.uninstall and args.fname[0].endswith(".toml"): + args.install = True # for Drag & Drop of .toml (and not wheel) + if args.fname[0] == "" or (not args.install and not args.uninstall): + parser.print_help() + sys.exit() + else: + try: + for args_fname in args.fname: + filename = Path(args_fname).name + install_from_wheelhouse = ["--no-index", "--trusted-host=None", f"--find-links={dist.wheelhouse / 'included.wheels'}"] + if filename.split('.')[0] == "pylock" and filename.split('.')[-1] == 'toml': + print(' a lock file !', args_fname, dist.target) + wh.get_pylock_wheels(dist.wheelhouse, Path(args_fname), args.wheelsource, args.wheeldrain) + sys.exit() + if args.uninstall: + package = dist.find_package(args_fname) + dist.uninstall(package) + elif args.install: + package = Package(args_fname) + if args.install: + dist.install(package, install_options=install_from_wheelhouse) + except NotImplementedError: + raise RuntimeError("Package is not (yet) supported by WPPM") + else: + raise OSError(f"Invalid Python distribution {args.target}") + + +if __name__ == "__main__": + main() \ No newline at end of file